Using narrowing to do isolation in symbolic equation solving — an experiment in automated reasoning

  • A. J. J. Dick
  • R. J. Cunningham
Equality Reasoning
Part of the Lecture Notes in Computer Science book series (LNCS, volume 230)


The PRESS symbolic equation solving system [STE82], and other algebraic manipulation packages, use a method known as isolation for equations containing only a single occurrence of an unknown. In effect, equations of the form f (t)=t′ are rewritten by t=f−1(t′), where f−1 is the inverse of f and t is a term containing the unknown. Meta-level inference is used to decide when isolation is applicable as opposed to other methods such as attraction and collection in which multiple occurrences of an unknown are drawn together.

This paper demonstrates how the technique of narrowing [RET85] implicitly performs isolation to solve equations. Narrowing involves the unification of the left-hand side of a rule with the equation to be solved, followed by rewriting by that rule (and others if applicable). Rewrite rules for isolation are provided, along with other properties of the functions involved, in the form f−1(f(v))⇒v, where v is a simple variable.

The potential advantage of this is that it may be possible to avoid the need for meta-level inference by mixing rewrite rules for isolation with rules expressing other methods to form a single term rewriting system, in which the conditions for applicability of all rules are the same; namely, matching and unification.

A very preliminary investigation is made on the basis of a single example in which some of the limitations of narrowing are highlighted. In particular, it is not always possible to find a finite confluent term rewriting system containing all the necessary rules.


Solution Path Critical Pair Symbolic Equation Single Occurrence Recursive Decomposition 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. CUN85.
    R. J. Cunningham and A. J. J. Dick, “Rewrite Systems on a Lattice of Types,” Acta Informatica 22, pp. 149–169 (1983).Google Scholar
  2. DIC86a.
    A. J. J. Dick, “ERIL — Equational Reasoning: an Interactive Laboratory,” Report No. RAL86010, Rutherford Appleton Laboratory, Chilton, OX11 0QX (1986).Google Scholar
  3. DIC86b.
    A. J. J. Dick, “Equational Reasoning and Rewrite Systems on a Lattice of Types,” PhD. Thesis, Dept. Computing, Imperial College, London (1986).Google Scholar
  4. FOR84.
    R. Forgaard and J.V. Guttag, “REVE: A term Rewriting System Generator with Failure Resistant Knuth-Bendix,” pp. 33–56 in Proceedings of an NSF workshop on the rewrite rule laboratory (Apr. 1984).Google Scholar
  5. HUE80b.
    G. Huet and D. C. Oppen, “Equations and Rewrite Rules — A Survey,” STAN-CS-80-785 (1980).Google Scholar
  6. LES82.
    J-P. Jouannoud, P. Lescanne, and F. Reinig, “Recursive Decomposition Ordering,” Conf. on Formal Description of Programming Concepts, North Holland (1982).Google Scholar
  7. KNU70.
    D. E. Knuth and P. B. Bendix, “Simple Word Problems in Universal Algrebras,” pp. 263–297 in Computational Problems in Abstract Algebra, ed. J. Leech, Pergamon Press (1970).Google Scholar
  8. LES83.
    P. Lescanne, “Computer Experiments with the REVE Term Rewriting System Generator,” pp. 99–108 in Proc. 10th Symp. on Principles of Programming Languages, ACM Austin, TX (1983 ).Google Scholar
  9. RET85.
    P. Rety, C. Kirchner, H. Kirchner, and P. Lescanne, “NARROWER: a new algorithm for unification and its application to Logic Programming,” To appear in Procs. of the First Internat. Conf. on Rewriting Techniques and Applications, LNCS, Springer-Verlag (May 1985).Google Scholar
  10. STE82.
    L. Sterling, A. Bundy, L. Byrd, R. O'Keefe, and B. Silver, “Solving Symbolic Equations with PRESS,” Univ. of Edinburgh, Dept. of Artificial Intelligence, Research Paper No: 171 (Jan. 1982).Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1986

Authors and Affiliations

  • A. J. J. Dick
    • 1
  • R. J. Cunningham
    • 2
  1. 1.Informatics DivisionRutherford Appleton Lab.Chilton, Didcot
  2. 2.Dept. of ComputingImperial CollegeLONDON

Personalised recommendations