Rough Diamond: An Extension of Equivalence-Based Rewriting

  • Matt Kaufmann
  • J Strother Moore
Part of the Lecture Notes in Computer Science book series (LNCS, volume 8558)


Previous work by the authors generalized conditional rewriting from the use of equalities to the use of arbitrary equivalence relations. Such (classic) equivalence-based rewriting automates the replacement of one subterm by another that may not be strictly equal to it, but is equivalent to it, where this equivalence is determined automatically to be sufficient at that subterm occurrence. We extend that capability by introducing patterned congruence rules in the ACL2 theorem prover, to provide more control over the occurrences where such a replacement may be made. This extension enables additional automation of the rewriting process, which is important in industrial-scale applications. However, because this feature is so new (introduced January, 2014), we do not yet have industrial applications to verify its utility, so we present a small example that illustrates how it supports scaling to large proof efforts.


ACL2 rewriting congruence equivalence relation 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Brock, B., Kaufmann, M., Moore, J.: Rewriting with equivalence relations in ACL2. Journal of Automated Reasoning 40(4), 293–306 (2008), CrossRefMathSciNetGoogle Scholar
  2. 2.
    Cohen, C.: Pragmatic quotient types in Coq. In: Blazy, S., Paulin-Mohring, C., Pichardie, D. (eds.) ITP 2013. LNCS, vol. 7998, pp. 213–228. Springer, Heidelberg (2013), CrossRefGoogle Scholar
  3. 3.
    Homeier, P.: A design structure for higher order quotients. In: Hurd, J., Melham, T. (eds.) TPHOLs 2005. LNCS, vol. 3603, pp. 130–146. Springer, Heidelberg (2005), CrossRefGoogle Scholar
  4. 4.
    Huffman, B., Kunčar, O.: Lifting and transfer: A modular design for quotients in Isabelle/HOL. In: Gonthier, G., Norrish, M. (eds.) CPP 2013. LNCS, vol. 8307, pp. 131–146. Springer, Heidelberg (2013), CrossRefGoogle Scholar
  5. 5.
    Kaufmann, M.: ACL2 demo of (patterned) congruences,
  6. 6.
    Kaufmann, M., Manolios, P., Moore, J.S.: Computer-Aided Reasoning: An Approach. Kluwer Academic Publishers, Boston (2000)Google Scholar
  7. 7.
    Kaufmann, M., Moore, J S.: ACL2 home page,
  8. 8.
    Kaufmann, M., Moore, J S.: Essay on Patterned Congruences and Equivalences, in ACL2 source file rewrite.lisp,
  9. 9.
    Swords, S.: Personal communicationGoogle Scholar
  10. 10.
    ACL2 Community Books,

Copyright information

© Springer International Publishing Switzerland 2014

Authors and Affiliations

  • Matt Kaufmann
    • 1
  • J Strother Moore
    • 1
  1. 1.Dept. of Computer ScienceUniversity of TexasAustinUSA

Personalised recommendations