A Formal Proof of Dickson’s Lemma in ACL2

  • F. J. Martın-Mateos
  • J. A. Alonso
  • M. J. Hidalgo
  • J. L. Ruiz-Reina
Part of the Lecture Notes in Computer Science book series (LNCS, volume 2850)


Dickson’s Lemma is the main result needed to prove the termination of Buchberger’s algorithm for computing Gröbner basis of polynomial ideals. In this case study, we present a formal proof of Dickson’s Lemma using the ACL2 system. Due to the limited expressiveness of the ACL2 logic, the classical non-constructive proof of this result cannot be done in ACL2. Instead, we formalize a proof where the termination argument is justified by the multiset extension of a well-founded relation.


Formal Proof Recursive Call Constructive Proof Reducible Pattern Common Lisp 
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.
    Baader, F., Nipkow, T.: Term Rewriting and All That. Cambridge University Press, Cambridge (1998)Google Scholar
  2. 2.
    Becker, T., Weispfenning, V.: Gröbner Bases: A Computational Approach to Commutative Algebra. Springer, Heidelberg (1998)Google Scholar
  3. 3.
    Berger, U., Schwichtenberg, H., Seisenberger, M.: The Warshall Algorithm and Dickson’s Lemma: Two Examples of Realistic Program Extraction. Journal of Automated Reasoning 26, 205–221 (2001)zbMATHCrossRefMathSciNetGoogle Scholar
  4. 4.
    Coquand, T., Persson, H.: Gröbner Bases in Type Theory. In: Altenkirch, T., Naraschewski, W., Reus, B. (eds.) TYPES 1998. LNCS, vol. 1657, pp. 33–46. Springer, Heidelberg (1999)CrossRefGoogle Scholar
  5. 5.
    Dershowitz, N., Manna, Z.: Proving Termination with Multiset Orderings. Communications of the ACM 22(8), 465–476 (1979)zbMATHCrossRefMathSciNetGoogle Scholar
  6. 6.
    Kaufmann, M., Manolios, P., Moore, J.S.: Computer-Aided Reasoning: An Approach. Kluwer Academic Publishers, Dordrecht (2000)Google Scholar
  7. 7.
    Kaufmann, M., Moore, J.S.: ACL2 Version 2.7 (2001), Homepage:
  8. 8.
    Lee, G., Rudnicki, P.: Dickson’s Lemma. Journal of Formalized Mathematics 14 (2002)Google Scholar
  9. 9.
    Medina–Bulo, I., Alonso, J.A., Palomo, F.: Polynomial algorithms in ACL2 (an approach to Buchberger algorithm). In: I Taller Iberoamericano sobre Deducción Automática e Inteligencia Artificial, IDEIA 2002 (2002) (in spanish), Available at
  10. 10.
    Perdry, H.: Strong noetherianity: a new constructive proof of Hilbert’s basis theorem, Available at
  11. 11.
    Persson, H.: An Integrated Development of Buchberger’s Algorithm in Coq. Rapport de recherche de l’INRIA, n (4271) (2001)Google Scholar
  12. 12.
    Pottier, L.: Dixon’s lemma (1996), Available at
  13. 13.
    Ruiz–Reina, J.L., Alonso, J.A., Hidalgo, M.J., Martín, F.J.: Multiset Relations: a Tool for Proving Termination. In: Second ACL2 Workshop, Technical Report TR-00-29, Computer Science Departament, University of Texas (2000), Available at
  14. 14.
    Simpson, S.G.: Ordinal numbers and the Hilbert basis theorem. Journal of Symbolic Logic 53(3), 961–974 (1988)zbMATHCrossRefMathSciNetGoogle Scholar
  15. 15.
    Sustyk, M.: Proof of Dickson’s Lemma Using the ACL2 Theorem Prover via an Explicit Ordinal Mapping. In: Fourth ACL2 Workshop (2003), Available at
  16. 16.
    Théry, L.: A Machine-Checked Implementation of Buchberger’s Algorithm. Journal of Automated Reasoning 26(2), 107–137 (2001)zbMATHCrossRefMathSciNetGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2003

Authors and Affiliations

  • F. J. Martın-Mateos
    • 1
  • J. A. Alonso
    • 1
  • M. J. Hidalgo
    • 1
  • J. L. Ruiz-Reina
    • 1
  1. 1.Computational Logic Group, Dept. of Computer Science and Artificial IntelligenceUniversity of Seville, E.T.S.I. InformáticaSevillaSpain

Personalised recommendations