Formalisation of the computation of the echelon form of a matrix in Isabelle/HOL

  1. Aransay, J.
  2. Divasón, J.
  1. 1 Universidad de La Rioja
    info

    Universidad de La Rioja

    Logroño, España

    ROR https://ror.org/0553yr311

Revista:
Formal Aspects of Computing

ISSN: 0934-5043

Año de publicación: 2016

Volumen: 28

Número: 6

Páginas: 1005-1026

Tipo: Artículo

DOI: 10.1007/S00165-016-0383-1 SCOPUS: 2-s2.0-84976417872 WoS: WOS:000385168200003 GOOGLE SCHOLAR

Otras publicaciones en: Formal Aspects of Computing

Resumen

In this contribution we present a formalised algorithm in the Isabelle/HOL proof assistant to compute echelon forms, and, as a consequence, characteristic polynomials of matrices. We have proved its correctness over Bézout domains, but its executability is only guaranteed over Euclidean domains, such as the integer ring and the univariate polynomials over a field. This is possible since the algorithm has been parameterised by a (possibly non-computable) operation that returns the Bézout coefficients of a pair of elements of a ring. The echelon form is also used to compute determinants and inverses of matrices. As a by-product, some algebraic structures have been implemented (principal ideal domains, Bézout domains, etc.). In order to improve performance, the algorithm has been refined to immutable arrays inside of Isabelle and code can be generated to functional languages as well. © 2016, British Computer Society.