Skip to main content

Using Abstract Stobjs in ACL2 to Compute Matrix Normal Forms

  • Conference paper
Interactive Theorem Proving (ITP 2017)

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 10499))

Included in the following conference series:

Abstract

We present here an application of abstract single threaded objects (abstract stobjs) in the ACL2 theorem prover, to define a formally verified algorithm that given a matrix with elements in the ring of integers, computes an equivalent matrix in column echelon form. Abstract stobjs allow us to define a sound logical interface between matrices defined as lists of lists, convenient for reasoning but inefficient, and matrices represented as unidimensional stobjs arrays, which implement accesses and (destructive) updates in constant time. Also, by means of the abstract stobjs mechanism, we use a more convenient logical representation of the transformation matrix, as a sequence of elemental transformations. Although we describe here a particular normalization algorithm, we think this approach could be useful to obtain formally verified and efficient executable implementations of a number of matrix normal form algorithms.

Supported by Ministerio de Ciencia e Innovación, projects TIN2013-41086-P and MTM2014-54151-P.

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.

    Some algorithms for computing matrix normal forms, like the Smith normal form, need to compute two transformation matrices, but similar ideas would apply in that case.

  2. 2.

    Of course, other normal forms algorithms needs different elementary transformations, and possible more than one. But again, the same ideas described here could be applied in such cases.

  3. 3.

    We used ACL2 Version 7.2 compiled with SBCL 1.2.16.

References

  1. ACL2 version 7.4. http://www.cs.utexas.edu/users/moore/acl2/

  2. 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(9), 1–21 (2015)

    MathSciNet  MATH  Google Scholar 

  3. Aransay, J., Divasón, J.: Formalization of the computation of the echelon form of a matrix in Isabelle/HOL. Form. Asp. Comput. 28, 1005–1026 (2016)

    Article  MathSciNet  Google Scholar 

  4. Cano, G., Cohen, C., Dénès, M., Mörtberg, A., Siles, V.: Formalized linear algebra over elementary divisor rings in Coq logical methods in computer. Science 12(2), 1–29 (2016)

    MATH  Google Scholar 

  5. Cowles, J., Gamboa, R., Van Baalen, J.: Using ACL2 arrays to formalize matrix algebra. In: Proceedings of ACL2 2003 (2003)

    Google Scholar 

  6. Domich, P.D., Kannan, R., Trotter Jr., L.E.: Hermite normal form computation using modulo determinant arithmetic. Math. Oper. Res. 12, 50–69 (1987)

    Article  MathSciNet  Google Scholar 

  7. Goel, S., Hunt Jr., W.A., Kaufmann, M.: Abstract stobjs and their application to ISA modeling. In: Proceedings of ACL2 2013, pp. 54–69 (2013)

    Google Scholar 

  8. Gonthier, G.: Point-free, set-free concrete linear algebra. In: van Eekelen, M., Geuvers, H., Schmaltz, J., Wiedijk, F. (eds.) ITP 2011. LNCS, vol. 6898, pp. 103–118. Springer, Heidelberg (2011). doi:10.1007/978-3-642-22863-6_10

    Chapter  Google Scholar 

  9. Heras, J., Coquand, T., Mörtberg, A., Siles, V.: Computing persistent homology within Coq/SSReflect. ACM Trans. Comput. Log. 14(4), 1–26 (2013)

    Article  MathSciNet  Google Scholar 

  10. Lambán, L., Martín-Mateos, F.-J., Rubio, J., Ruiz-Reina, J.-L.: Towards a verifiable topology of data. In: Proceedings of EACA-2016, pp. 113–116 (2016)

    Google Scholar 

  11. Newman, M.: The Smith normal form. Linear Algebra Appl. 254, 367–381 (1997)

    Article  MathSciNet  Google Scholar 

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

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Francisco J. Martín-Mateos .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2017 Springer International Publishing AG

About this paper

Cite this paper

Lambán, L., Martín-Mateos, F.J., Rubio, J., Ruiz-Reina, JL. (2017). Using Abstract Stobjs in ACL2 to Compute Matrix Normal Forms. In: Ayala-Rincón, M., Muñoz, C.A. (eds) Interactive Theorem Proving. ITP 2017. Lecture Notes in Computer Science(), vol 10499. Springer, Cham. https://doi.org/10.1007/978-3-319-66107-0_23

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-66107-0_23

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-66106-3

  • Online ISBN: 978-3-319-66107-0

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics