Gröbner Bases of Modules and Faugère’s \(F_4\) Algorithm in Isabelle/HOL

  • Alexander Maletzky
  • Fabian Immler
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 11006)


We present an elegant, generic and extensive formalization of Gröbner bases, an important mathematical theory in the field of computer algebra, in Isabelle/HOL. The formalization covers all of the essentials of the theory (polynomial reduction, S-polynomials, Buchberger’s algorithm, Buchberger’s criteria for avoiding useless pairs), but also includes more advanced features like reduced Gröbner bases. Particular highlights are the first-time formalization of Faugère’s matrix-based \(F_4\) algorithm and the fact that the entire theory is formulated for modules and submodules rather than rings and ideals. All formalized algorithms can be translated into executable code operating on concrete data structures, enabling the certified computation of (reduced) Gröbner bases and syzygy modules.



We thank the anonymous referees for their valuable comments.


  1. 1.
    Ballarin, C.: Tutorial to locales and locale interpretation. In: Lambán, L., Romero, A., Rubio, J. (eds.) Contribuciones Científicas en Honor de Mirian Andrés Gómez, pp. 123–140. Servicio de Publicaciones de la Universidad de La Rioja (2010). Part of the Isabelle documentation:
  2. 2.
    Bentkamp, A.: Expressiveness of deep learning. Archive of Formal Proofs (2016). Formal proof development:
  3. 3.
    Buchberger, B.: Ein Algorithmus zum Auffinden der Basiselemente des Restklassenrings nach einem nulldimensionalen Polynomideal. Ph.D. thesis, Mathematisches Institut, Universität Innsbruck, Austria (1965). English Translation in J. Symb. Comput. 41(3–4), 475–511 (2006)Google Scholar
  4. 4.
    Buchberger, B.: Towards the automated synthesis of a Gröbner bases algorithm. RACSAM, Serie A: Math. 98(1), 65–75 (2004)MathSciNetzbMATHGoogle Scholar
  5. 5.
    Chaieb, A., Wenzel, M.: Context aware calculation and deduction. In: Kauers, M., Kerber, M., Miner, R., Windsteiger, W. (eds.) Calculemus/MKM 2007. LNCS (LNAI), vol. 4573, pp. 27–39. Springer, Heidelberg (2007). Scholar
  6. 6.
    Craciun, A.: Lazy thinking algorithm synthesis in Gröbner bases theory. Ph.D. thesis, RISC, Johannes Kepler University Linz, Austria (2008)Google Scholar
  7. 7.
    Faugère, J.C.: A new efficient algorithm for computing Gröbner bases (\(F_4\)). J. Pure Appl. Algebra 139(1), 61–88 (1999). Scholar
  8. 8.
    Haftmann, F.: Code Generation from Isabelle/HOL Theories. Part of the Isabelle documentation:
  9. 9.
    Haftmann, F.: Haskell-Like Type Classes with Isabelle/Isar. Part of the Isabelle documentation:
  10. 10.
    Haftmann, F., Lochbihler, A., Schreiner, W.: Towards Abstract and Executable Multivariate Polynomials in Isabelle (2014). Contributed talk at Isabelle Workshop 2014, associated with ITP 2014, Vienna, Austria:
  11. 11.
    Harrison, J.: Complex quantifier elimination in HOL. In: Boulton, R.J., Jackson, P.B. (eds.) TPHOLs 2001: Supplemental Proceedings, pp. 159–174. Division of Informatics, University of Edinburgh (2001).
  12. 12.
    Immler, F., Maletzky, A.: Gröbner bases theory. Archive of Formal Proofs (2016). Formal proof development:
  13. 13.
    Immler, F., Maletzky, A.: Gröbner Bases of Modules and Faugère’s \(F_4\) Algorithm (formalization) (2018). Compatible with Isabelle 2017:
  14. 14.
    Jorge, J.S., Guilas, V.M., Freire, J.L.: Certifying properties of an efficient functional program for computing Gröbner bases. J. Symb. Comput. 44(5), 571–582 (2009). Scholar
  15. 15.
    Kreuzer, M., Robbiano, L.: Computational Commutative Algebra 1. Springer, Heidelberg (2000). Scholar
  16. 16.
    Maletzky, A.: Computer-assisted exploration of Gröbner bases theory in Theorema. Ph.D. thesis, RISC, Johannes Kepler University Linz, Austria (2016)Google Scholar
  17. 17.
    Maletzky, A., Immler, F.: Gröbner bases of modules and Faugère’s \(F_4\) algorithm in Isabelle/HOL (extended version). Technical report (2018). arXiv:1805.00304 [cs.LO]
  18. 18.
    Medina-Bulo, I., Palomo-Lozano, F., Ruiz-Reina, J.L.: A verified common lisp implementation of Buchberger’s algorithm in ACL2. J. Symb. Comput. 45(1), 96–123 (2010). Scholar
  19. 19.
    Nipkow, T., Paulson, L.C., Wenzel, M.: Isabelle/HOL—A Proof Assistant for Higher-Order Logic. LNCS, vol. 2283. Springer, Heidelberg (2002). Scholar
  20. 20.
    Persson, H.: An integrated development of Buchberger’s algorithm in Coq. Technical report 4271. INRIA Sophia Antipolis (2001)Google Scholar
  21. 21.
    Schwarzweller, C.: Gröbner bases – theory refinement in the Mizar system. In: Kohlhase, M. (ed.) MKM 2005. LNCS (LNAI), vol. 3863, pp. 299–314. Springer, Heidelberg (2006). Scholar
  22. 22.
    Sternagel, C., Thiemann, R.: Abstract rewriting. Archive of Formal Proofs (2010). Formal proof development:
  23. 23.
    Sternagel, C., Thiemann, R., Maletzky, A., Immler, F.: Executable multivariate polynomials. Archive of Formal Proofs (2010). Formal proof development:
  24. 24.
    Théry, L.: A machine-checked implementation of Buchberger’s algorithm. J. Autom. Reason. 26(2), 107–137 (2001). Scholar
  25. 25.
    Thiemann, R., Yamada, A.: Matrices, Jordan normal forms, and spectral radius theory. Archive of Formal Proofs (2015). Formal proof development:

Copyright information

© Springer International Publishing AG, part of Springer Nature 2018

Authors and Affiliations

  1. 1.RISC, Johannes Kepler Universität LinzLinzAustria
  2. 2.Institut für Informatik, Technische Universität MünchenMunichGermany

Personalised recommendations