Skip to main content
Log in

Things to Know when Implementing KBO

  • Published:
Journal of Automated Reasoning Aims and scope Submit manuscript

Abstract

The Knuth–Bendix ordering (KBO) is one of the term orderings in widespread use. We present a new algorithm to compute KBO, which is (to our knowledge) the first asymptotically optimal one. Starting with an ‘obviously correct’ version, we use program transformation to stepwise develop an efficient version, making clear the essential ideas, while retaining correctness. By theoretical analysis we show that the worst-case behavior is thereby changed from quadratic to linear. Measurements show the practical improvements of the different variants.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Institutional subscriptions

Similar content being viewed by others

References

  1. Burstall, R.M., Darlington, J.: A transformation system for developing recursive programs. Journal of the ACM 24(1), 44–67 (1977)

    Article  MATH  MathSciNet  Google Scholar 

  2. Buch, A., Hillenbrand, T.: \(\textsc{Waldmeister}\): Development of a High Performance Completion-Based Theorem Prover. SEKI-Report 96-01, Universität Kaiserslautern (1996)

  3. Dershowitz, N., Plaisted, D.A.: Rewriting. In: Robinson, A., Voronkov, A. (eds.) Handbook of Automated Reasoning, vol. I, ch. 9. Elsevier (2001)

  4. Knuth, D.E., Bendix, P.B.: Simple word problems in universal algebras. In: Leech, J. (ed.) Computational Algebra, pp. 263–297. Pergamon (1970)

  5. Löchner, B., Hillenbrand, T.: A phytography of \(\textsc{Wald\-mei\-ster}\). AI Commun. 15(2–3), 127–133 (2002). See http://www.waldmeister.org

    MATH  Google Scholar 

  6. Löchner, B.: Things to know when implementing LPO. Int. J. Artif. Intell. Tools 15(1), 53–79 (2006). A preliminary version appeared. In: Sutcliffe, G., Schulz, S., Tammet, T. (eds.) Proc. 1st Workshop on Empirically Successful First Order Reasoning (ESFOR '04) (2004)

  7. Nieuwenhuis, R., Hillenbrand, T., Riazanov, A., Voronkov, A.: On the evaluation of indexing techniques for theorem proving. In: Goré, R., Leitsch, A., Nipkow, T. (eds.) Proc. 1st International Joint Conference on Automated Reasoning, Lecture Notes in Comput. Sci. 2083, pp. 257–271. Springer, Berlin Heidelberg New York (2001)

  8. Pettorossi, A., Proietti, M.: Rules and strategies for program transformation. In: Möller, B., Partsch, H., Schuman, S. (eds.) Formal Program Development, vol. 755 of Lecture Notes in Comput. Sci., pp. 263–304. Springer, Berlin Heidelberg New York (1993)

  9. Riazanov, A., Voronkov, A.: The design and implementation of \(\textsc{Vampire}\). AI Commun. 15, 91–110 (2002). See http://www.vampire.fm

    MATH  Google Scholar 

  10. Riazanov, A., Voronkov, A.: Efficient checking of term ordering constraints. In: Basin, D., Rusinowitch, M. (eds.) Proc. 2nd International Joint Conference on Automated Reasoning, LNCS 3097, pp. 60–74. Springer, Berlin Heidelberg New York (2004)

  11. Schulz, S.: E – A brainiac theorem prover. AI Commun. 15, 111–126 (2002). See http://www.eprover.org

    MATH  Google Scholar 

  12. Sutcliffe, G., Suttner, C.B.: The TPTP problem library: CNF release v1.2.1. J. Autom. Reason. 21(2), 177–203 (1998). See http://www.tptp.org

    Article  MATH  MathSciNet  Google Scholar 

  13. Steinbach, J.: Termination of Rewriting. Ph.D. thesis, Universität Kaiserslautern, 1994. See http://www-madlener.informatik.uni-kl.de/seki/1994/Steinbach.PhDThesis.ps.Z

  14. Wadler, P.: Comprehending monads. Math. Struct. Comput. Sci. 2, 461–493 (1992)

    Article  MATH  MathSciNet  Google Scholar 

  15. Weidenbach, C.: Combining superposition, sorts and splitting. In: Robinson, A., Voronkov, A. (eds.) Handbook of Automated Reasoning, vol. II, ch. 27. Elsevier (2001)

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Bernd Löchner.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Löchner, B. Things to Know when Implementing KBO. J Autom Reasoning 36, 289–310 (2006). https://doi.org/10.1007/s10817-006-9031-4

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10817-006-9031-4

Key words

Navigation