Skip to main content

A Formal Proof of the Computation of Hermite Normal Form in a General Setting

  • Conference paper
  • First Online:
Artificial Intelligence and Symbolic Computation (AISC 2018)

Part of the book series: Lecture Notes in Computer Science ((LNAI,volume 11110))

Abstract

In this work, we present a formal proof of an algorithm to compute the Hermite normal form of a matrix based on our existing framework for the formalisation, execution, and refinement of linear algebra algorithms in Isabelle/HOL. The Hermite normal form is a well-known canonical matrix analogue of reduced echelon form of matrices over fields, but involving matrices over more general rings, such as Bézout domains. We prove the correctness of this algorithm and formalise the uniqueness of the Hermite normal form of a matrix. The succinctness and clarity of the formalisation validate the usability of the framework.

This work has been supported by the projects MTM2014-54151-P and MTM2017-88804-P from Ministerio de Economía y Competitividad (Gobierno de España).

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

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Notes

  1. 1.

    The Isabelle file that serialises to UArrays is available from our website [16].

  2. 2.

    Neither records nor locales [9] are used for this task, although they are a valid alternative.

References

  1. Archive of Formal Proofs. http://afp.sourceforge.net/

  2. Immutable non-strict arrays in Haskell. http://hackage.haskell.org/package/array-0.5.2.0/docs/Data-Array.html

  3. Matlab documentation. Definition of Hermite Normal Form. http://es.mathworks.com/help/symbolic/hermiteform.html#butzrp_-5

  4. The Vector structure in SML. http://sml-family.org/Basis/vector.html

  5. HOL interactive theorem prover (2016). https://hol-theorem-prover.org/

  6. Aransay, J., Divasón, J.: Formalisation in higher-order logic and code generation to functional languages of the Gauss-Jordan algorithm. J. Funct. Program. 25, 22 p. (2015). https://doi.org/10.1017/S0956796815000155

    Article  MathSciNet  MATH  Google Scholar 

  7. Aransay, J., Divasón, J.: A formalisation in HOL of the fundamental theorem of linear algebra and its application to the solution of the least squares problem. J. Autom. Reason. 58, 509–535 (2017). https://doi.org/10.1007/s10817-016-9379-z

    Article  MathSciNet  MATH  Google Scholar 

  8. Aransay, J., Divasón, J.: Formalisation of the computation of the echelon form of a matrix in Isabelle/HOL. Formal Aspects Comput. 28(6), 1005–1026 (2016)

    Article  MathSciNet  Google Scholar 

  9. Ballarin, C.: Locales: a module system for mathematical theories. J. Autom. Reason. 52(2), 123–153 (2014)

    Article  MathSciNet  Google Scholar 

  10. Bradley, G.H.: Algorithms for Hermite and Smith normal matrices and linear diophantine equations. Math. Comput. 25(116), 897–907 (1971)

    Article  MathSciNet  Google Scholar 

  11. Cano, G., Cohen, C., Dénès, M., Mörtberg, A., Siles, V.: Formalized linear algebra over elementary divisor rings in Coq. Logical Methods Comput. Sci. 12(2) (2016)

    Google Scholar 

  12. Cohen, C., Dénès, M., Mörtberg, A.: Refinements for free!. In: Gonthier, G., Norrish, M. (eds.) CPP 2013. LNCS, vol. 8307, pp. 147–162. Springer, Cham (2013). https://doi.org/10.1007/978-3-319-03545-1_10

    Chapter  Google Scholar 

  13. Cohen, H.: A Course in Computational Algebraic Number Theory. Springer, New York (1993). https://doi.org/10.1007/978-3-662-02945-9

    Book  MATH  Google Scholar 

  14. Coquand, T., Mörtberg, A., Siles, V.: A formal proof of Sasaki-Murao algorithm. J. Formalized Reason. 5(1), 27–36 (2012)

    MathSciNet  Google Scholar 

  15. The Coq development team. The Coq proof assistant reference manual. LogiCal Project (2018). Version 8.8.0. http://coq.inria.fr

  16. Divasón, J.: Additional files to the Hermite normal form development (2018). http://www.unirioja.es/cu/jodivaso/Isabelle/Hermite/Hermite.html

  17. Divasón, J., Aransay, J.: Hermite normal form. Archive of Formal Proofs, July 2015

    Google Scholar 

  18. Durán, A.J., Pérez, M., Varona, J.L.: The Misfortunes of a trio of mathematicians using computer algebra systems. Can we trust in them? Not. AMS 61(10), 1249–1252 (2014)

    Google Scholar 

  19. Gamboa, R., Cowles, J., Baalen, J.V.: Using ACL2 arrays to formalise matrix algebra. In: Fourth International Workshop on the ACL2 Theorem Prover and Its Applications (2003)

    Google Scholar 

  20. Gonthier, G.: Formal proof - the four-color theorem. Not. AMS 55(11), 1382–1393 (2008)

    MathSciNet  MATH  Google Scholar 

  21. Hafner, J.L., McCurley, K.S.: A rigorous subexponential algorithm for computation of class groups. J. Am. Math. Soc. 2(4), 837–850 (1989)

    Article  MathSciNet  Google Scholar 

  22. Harrison, J.: The HOL Light theory of euclidean space. J. Autom. Reason. 50(2), 173–190 (2013)

    Article  MathSciNet  Google Scholar 

  23. The Haskell Programming Language (2016). http://www.haskell.org/

  24. 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, Cham (2013). https://doi.org/10.1007/978-3-319-03545-1_9

    Chapter  MATH  Google Scholar 

  25. Hung, M.S., Rom, W.O.: An application of the Hermite normal form in integer programming. Linear Algebra Appl. 140, 163–179 (1990)

    Article  MathSciNet  Google Scholar 

  26. Kaltofen, E., Krishnamoorthy, M.S., Saunders, B.D.: Fast parallel computation of Hermite and Smith forms of polynomial matrices. SIAM J. Algebraic Discrete Methods 8(4), 683–690 (1987)

    Article  MathSciNet  Google Scholar 

  27. Kannan, R., Bachem, A.: Polynomial algorithms for computing the Smith and Hermite normal forms of an integer matrix. SIAM J. Comput. 8(4), 499–507 (1979)

    Article  MathSciNet  Google Scholar 

  28. Klein , G., et al.: seL4: formal verification of an OS kernel. In: Proceedings of the 22nd ACM Symposium on Operating Systems Principles, SOSP 2009, Big Sky, Montana, USA, pp. 207–220 (2009)

    Google Scholar 

  29. Kunčar, O., Popescu, A.: From types to sets by local type definitions in higher-order logic. In: Blanchette, J.C., Merz, S. (eds.) Interactive Theorem Proving. pp, pp. 200–218. Springer International Publishing, Cham (2016)

    Chapter  Google Scholar 

  30. Lambán, L., Martín-Mateos, F.J., Rubio, J., Ruiz-Reina, J.-L.: Using abstract stobjs in ACL2 to compute matrix normal forms. In: Ayala-Rincón, M., Muñoz, C.A. (eds.) ITP 2017. LNCS, vol. 10499, pp. 354–370. Springer, Cham (2017). https://doi.org/10.1007/978-3-319-66107-0_23

    Chapter  Google Scholar 

  31. Li, L., Li, H., Liu, Y.: A decision algorithm for linear sentences on a PFM. Ann. Pure Appl. Logic 59, 273–286 (1993)

    Article  MathSciNet  Google Scholar 

  32. Li, W., Paulson, L.C.: A modular, efficient formalisation of real algebraic numbers. In: Proceedings of the 5th ACM SIGPLAN Conference on Certified Programs and Proofs, Saint Petersburg, FL, USA, 20–22 January 2016, pp. 66–75 (2016)

    Google Scholar 

  33. Lochbihler, A.: Verifying a compiler for Java threads. In: Gordon, A.D. (ed.) ESOP 2010. LNCS, vol. 6012, pp. 427–447. Springer, Heidelberg (2010). https://doi.org/10.1007/978-3-642-11957-6_23

    Chapter  Google Scholar 

  34. Narkawicz, A., Muoz, C., Dutle, A.: Formally-verified decision procedures for univariate polynomial computation based on Sturm’s and Tarski’s theorems. J. Autom. Reason. 54(4), 285–326 (2015)

    Article  MathSciNet  Google Scholar 

  35. Newman, M.: Integral Matrices. Pure and Applied Mathematics. Elsevier Science, New York (1972)

    Google Scholar 

  36. Nipkow, T., Wenzel, M., Paulson, L.C. (eds.): Isabelle/HOL. A Proof Assistant for Higher-Order Logic. LNCS, vol. 2283. Springer, Heidelberg (2002). https://doi.org/10.1007/3-540-45949-9

  37. Nipkow, T., Paulson, L.C., Wenzel, M.: Isabelle/HOL - A Proof Assistant for Higher-Order Logic (2018). Updated version of the book with the same title and authors

    Google Scholar 

  38. Obua, S., Nipkow, T.: Flyspeck II: the basic linear programs. Ann. Math. Artif. Intell. 56(3–4), 245–272 (2009)

    Article  MathSciNet  Google Scholar 

  39. Paulson, L.C.: A mechanised proof of Gödel’s incompleteness theorems using nominal Isabelle. J. Autom. Reason. 55(1), 1–37 (2015)

    Article  Google Scholar 

  40. Ramanujam, J.: Beyond unimodular transformations. J. Supercomput. 9(4), 365–389 (1995)

    Article  Google Scholar 

  41. Rudnicki, P., Schwarzweller, C., Trybulec, A.: Commutative algebra in the Mizar system. J. Symbolic Comput. 32(1/2), 143–169 (2001)

    Article  MathSciNet  Google Scholar 

  42. Sternagel, C., Thiemann, R.: Executable matrix operations on matrices of arbitrary dimensions. Archive of Formal Proofs, June 2010

    Google Scholar 

  43. Storjohann, A.: Algorithms for matrix canonical forms. Ph.D. thesis, Swiss Federal Institute of Technology, Zurich (2000)

    Google Scholar 

  44. Thiemann, R., Yamada, A.: Formalizing Jordan normal forms in Isabelle/HOL. In: Proceedings of the 5th ACM SIGPLAN Conference on Certified Programs and Proofs, Saint Petersburg, FL, USA, 20–22 January 2016, pp. 88–99 (2016)

    Google Scholar 

  45. Tourloupis, V.E.: Hermite normal forms and its cryptographic applications. Master’s thesis, University of Wollongong (2013)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Jose Divasón .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2018 Springer Nature Switzerland AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Divasón, J., Aransay, J. (2018). A Formal Proof of the Computation of Hermite Normal Form in a General Setting. In: Fleuriot, J., Wang, D., Calmet, J. (eds) Artificial Intelligence and Symbolic Computation. AISC 2018. Lecture Notes in Computer Science(), vol 11110. Springer, Cham. https://doi.org/10.1007/978-3-319-99957-9_3

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-99957-9_3

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-99956-2

  • Online ISBN: 978-3-319-99957-9

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics