Folding Variant Narrowing and Optimal Variant Termination

  • Santiago Escobar
  • Ralf Sasse
  • José Meseguer
Part of the Lecture Notes in Computer Science book series (LNCS, volume 6381)


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.


Variant Property Equational Theory Variant Decomposition Cryptographic Protocol Variant Semantic 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Alpuente, M., Escobar, S., Iborra, J.: Modular termination of basic narrowing. In: Voronkov, A. (ed.) RTA 2008. LNCS, vol. 5117, pp. 1–16. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  2. 2.
    Alpuente, M., Falaschi, M., Vidal, G.: Partial Evaluation of Functional Logic Programs. ACM Transactions on Programming Languages and Systems 20(4), 768–844 (1998)CrossRefGoogle Scholar
  3. 3.
    Anantharaman, S., Narendran, P., Rusinowitch, M.: Unification modulo cui plus distributivity axioms. J. Autom. Reasoning 33(1), 1–28 (2004)CrossRefzbMATHGoogle Scholar
  4. 4.
    Comon-Lundh, H., Delaune, S.: The finite variant property: How to get rid of some algebraic properties. In: Giesl, J. (ed.) RTA 2005. LNCS, vol. 3467, pp. 294–307. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  5. 5.
    Durán, F., Lucas, S., Meseguer, J.: Termination modulo combinations of equational theories. In: Ghilardi, S. (ed.) FroCoS 2009. LNCS, vol. 5749, pp. 246–262. Springer, Heidelberg (2009)Google Scholar
  6. 6.
    Escobar, S., Meadows, C., Meseguer, J.: Maude-npa: Cryptographic protocol analysis modulo equational properties. In: FOSAD 2007. LNCS, vol. 5705, pp. 1–50. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  7. 7.
    Escobar, S., Meseguer, J.: Symbolic model checking of infinite-state systems using narrowing. In: Baader, F. (ed.) RTA 2007. LNCS, vol. 4533, pp. 153–168. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  8. 8.
    Escobar, S., Meseguer, J., Sasse, R.: Effectively checking the finite variant property. In: Voronkov, A. (ed.) RTA 2008. LNCS, vol. 5117, pp. 79–93. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  9. 9.
    Escobar, S., Meseguer, J., Sasse, R.: Variant narrowing and equational unification. Electr. Notes Theor. Comput. Sci. 238(3), 103–119 (2009)CrossRefzbMATHGoogle Scholar
  10. 10.
    Escobar, S., Meseguer, J., Thati, P.: Natural narrowing for general term rewriting systems. In: Giesl, J. (ed.) RTA 2005. LNCS, vol. 3467, pp. 279–293. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  11. 11.
    Giesl, J., Kapur, D.: Dependency pairs for equational rewriting. In: Middeldorp, A. (ed.) RTA 2001. LNCS, vol. 2051, pp. 93–108. Springer, Heidelberg (2001)CrossRefGoogle Scholar
  12. 12.
    Goguen, J.A., Meseguer, J.: Equality, types, modules, and (why not?) generics for logic programming. J. Log. Program. 1(2), 179–210 (1984)MathSciNetCrossRefzbMATHGoogle Scholar
  13. 13.
    Hanus, M.: The Integration of Functions into Logic Programming: From Theory to Practice. Journal of Logic Programming 19&20, 583–628 (1994)MathSciNetCrossRefzbMATHGoogle Scholar
  14. 14.
    Hölldobler, S.: Foundations of Equational Logic Programming. In: Hölldobler, S. (ed.) Foundations of Equational Logic Programming. LNCS (LNAI), vol. 353. Springer, Heidelberg (1989)CrossRefGoogle Scholar
  15. 15.
    Hullot, J.-M.: Canonical forms and unification. In: Bibel, W., Kowalski, R.A. (eds.) CADE 1980. LNCS, vol. 87, pp. 318–334. Springer, Heidelberg (1980)Google Scholar
  16. 16.
    Jouannaud, J.-P., Kirchner, C., Kirchner, H.: Incremental construction of unification algorithms in equational theories. In: Díaz, J. (ed.) ICALP 1983. LNCS, vol. 154, pp. 361–373. Springer, Heidelberg (1983)CrossRefGoogle Scholar
  17. 17.
    Jouannaud, J.-P., Kirchner, H.: Completion of a set of rules modulo a set of equations. SIAM J. Comput. 15(4), 1155–1194 (1986)MathSciNetCrossRefzbMATHGoogle Scholar
  18. 18.
    Meseguer, J.: Conditional rewriting logic as a united model of concurrency. Theor. Comput. Sci. 96(1), 73–155 (1992)CrossRefzbMATHGoogle Scholar
  19. 19.
    Meseguer, J., Thati, P.: Symbolic reachability analysis using narrowing and its application to verification of cryptographic protocols. Higher-Order and Symbolic Computation 20(1-2), 123–160 (2007)CrossRefzbMATHGoogle Scholar
  20. 20.
    Middeldorp, A., Hamoen, E.: Completeness results for basic narrowing. Journal of Applicable Algebra in Engineering, Communication, and Computing 5, 213–253 (1994)MathSciNetCrossRefzbMATHGoogle Scholar
  21. 21.
    Peterson, G.E., Stickel, M.E.: Complete sets of reductions for some equational theories. J. ACM 28(2), 233–264 (1981)MathSciNetCrossRefzbMATHGoogle Scholar
  22. 22.
    Ryan, P.Y.A., Schneider, S.A.: An attack on a recursive authentication protocol. a cautionary tale. Inf. Process. Lett. 65(1), 7–10 (1998)CrossRefzbMATHGoogle Scholar
  23. 23.
    TeReSe (ed.): Term Rewriting Systems. Cambridge University Press, Cambridge (2003)Google Scholar
  24. 24.
    Viola, E.: E-unifiability via narrowing. In: Restivo, A., Rocca, S.R.D., Roversi, L. (eds.) ICTCS 2001. LNCS, vol. 2202, pp. 426–438. Springer, Heidelberg (2001)CrossRefGoogle Scholar
  25. 25.
    Viry, P.: Equational rules for rewriting logic. Theor. Comput. Sci. 285(2), 487–517 (2002)MathSciNetCrossRefzbMATHGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2010

Authors and Affiliations

  • Santiago Escobar
    • 1
  • Ralf Sasse
    • 2
  • José Meseguer
    • 2
  1. 1.DSIC-ELP, Universidad Politécnica de ValenciaSpain
  2. 2.University of Illinois at Urbana-ChampaignUSA

Personalised recommendations