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

Ano de publicación: 2016

Volume: 28

Número: 6

Páxinas: 1005-1026

Tipo: Artigo

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

Outras publicacións en: Formal Aspects of Computing

Resumo

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.