Complete Symbolic Reachability Analysis Using Back-and-Forth Narrowing

  • Prasanna Thati
  • José Meseguer
Part of the Lecture Notes in Computer Science book series (LNCS, volume 3629)


We propose a method called back-and-forth narrowing for solving reachability goals of the form \((\exists^\rightarrow_{x}).t_{1}\rightarrow*t'_{1}\wedge...\wedge t_{n}\rightarrow * t'_{n}\) in general term rewrite systems. The method is a complete semi-decision procedure in the sense that it is guaranteed to find a solution when one exists, but in general it may not terminate when there are no solutions. The completeness result is very general in that it makes no assumptions about the given term rewrite system. Specifically, the rewrite rules need not be linear, confluent, or terminating, and can even have extra-variables in the righthand side. Such generality is often essential while modeling concurrent systems or axiomatizing inference systems as rewrite rules, and in such applications back-and-forth narrowing can be used as a sound and complete technique for symbolic reachability analysis or as a deductive procedure for proving existential formulae.


Reachability Analysis Tree Automaton Extra Variable Existential Formula Reachability Goal 
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.
    Antoy, S., Echahed, R., Hanus, M.: A needed narrowing strategy. Journal of the ACM 47(4), 776–822 (2000)CrossRefMathSciNetGoogle Scholar
  2. 2.
    Basin, D., Modersheim, S., Vigano, L.: Constraint differentiation: A new reduction technique for constraint-based analysis of security protocols. Technical Report TR-405, Swiss Federal Insititute of Technology, Zurich (May 2003)Google Scholar
  3. 3.
    Bouajjani, A., Touili, T.: Extrapolating tree transformations. In: Brinksma, E., Larsen, K.G. (eds.) CAV 2002. LNCS, vol. 2404, p. 539. Springer, Heidelberg (2002)CrossRefGoogle Scholar
  4. 4.
    Burkart, O., Caucal, D., Moller, F., Steffen, B.: Verification over Infinite States. In: Handbook of Process Algebra, pp. 545–623. Elsevier Publishing, Amsterdam (2001)CrossRefGoogle Scholar
  5. 5.
    Dolev, D., Yao, A.: On the security of public key protocols. IEEE Transaction on Information Theory 29(2), 198–208 (1983)zbMATHCrossRefMathSciNetGoogle Scholar
  6. 6.
    Escobar, S., Meseguer, J., Thati, P.: Natural narrowing for general term rewriting systems. In: International Conference on Rewriting Techniques and applications (RTA) (2005); also available at,
  7. 7.
    Finkel, A., Schnoebelen, P.: Well-structured transition systems everywhere! Theoretical Computer Science 256(1), 63–92 (2001)zbMATHCrossRefMathSciNetGoogle Scholar
  8. 8.
    Genet, T., Klay, F.: Rewriting for cryptographic protocol verification. In: McAllester, D. (ed.) CADE 2000. LNCS, vol. 1831, pp. 271–290. Springer, Heidelberg (2000)CrossRefGoogle Scholar
  9. 9.
    Hanus, M.: The integration of functions into logic programming: From theory to practice. Jounral of Logic Programming 19(20), 583–628 (1994)CrossRefMathSciNetGoogle Scholar
  10. 10.
    Seki, H., Ohsaki, H., Takai, T.: ACTAS: A system design for associative and commutative tree automata theory. In: Proc. 5th Intl. Workshop on Rule-Based Programming (RULE 2004). ENTCS, Elsevier, Amsterdam (2004)Google Scholar
  11. 11.
    Hullot, J.M.: Canonical forms and unification. In: Bibel, W., Kowalski, R. (eds.) 5th Conference on Automated Deduction. LNCS, vol. 87, pp. 318–334. Springer, Heidelberg (1980)Google Scholar
  12. 12.
    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
  13. 13.
    Meadows, C.: The NRL protocol analyzer: An overview. Journal of logic programming 26(2), 113–131 (1996)zbMATHCrossRefGoogle Scholar
  14. 14.
    Meseguer, J., Thati, P.: Symbolic reachability analysis using narrowing and its application to analysis of cryptographic protocols. In: Workshop on Rewriting Logic and its Applications. Electronic Notes in Theoretical Computer Science. Elsevier, Amsterdam (2004), also available at (to appear)
  15. 15.
    Middeldorp, A., Hamoen, E.: Counterexamples to completeness results for basic narrowing. In: Kirchner, H., Levi, G. (eds.) ALP 1992. LNCS, vol. 632, pp. 244–258. Springer, Heidelberg (1992)CrossRefGoogle Scholar
  16. 16.
    Okui, S., Middeldorp, A., Ida, T.: Lazy narrowing: Strong completeness and eager variable elimination. In: Proceedings of the 20th Colloquium on Trees in Algebra and Programming. LNCS, vol. 915, pp. 394–408 (1995)Google Scholar
  17. 17.
    Peterson, G.E., Wegman, M.N.: Linear unification. Journal of Computer and Systems Sciences 16, 158–167 (1978)CrossRefGoogle Scholar
  18. 18.
    Takai, T.: A verification technique using term rewriting systems and abstract interpretation. In: van Oostrom, V. (ed.) RTA 2004. LNCS, vol. 3091, pp. 119–133. Springer, Heidelberg (2004)CrossRefGoogle Scholar
  19. 19.
    Takai, T., Kaji, Y., Seki, H.: Right-linear finite path overlapping term rewriting systems effectively preserve recognizability. In: Bachmair, L. (ed.) RTA 2000. LNCS, vol. 1833, pp. 246–260. Springer, Heidelberg (2000)CrossRefGoogle Scholar
  20. 20.
    Wolper, P., Boigelot, B.: Verifying systems with infinite but regular state spaces. In: Y. Vardi, M. (ed.) CAV 1998. LNCS, vol. 1427, pp. 88–97. Springer, Heidelberg (1998)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2005

Authors and Affiliations

  • Prasanna Thati
    • 1
  • José Meseguer
    • 2
  1. 1.Carnegie Mellon UniversityUSA
  2. 2.University of Illinois at Urbana-ChampaignUSA

Personalised recommendations