Formalisation of the computation of the echelon form of a matrix in Isabelle/HOL
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, suc...
| Autores: | , |
|---|---|
| Tipo de recurso: | artículo |
| Estado: | Versión publicada |
| Fecha de publicación: | 2016 |
| País: | España |
| Institución: | Universidad de La Rioja (UR) |
| Repositorio: | RIUR. Repositorio Institucional de la Universidad de La Rioja |
| OAI Identifier: | oai:portal.dialnet.es:doc/5bbc687bb750603269e809af |
| Acceso en línea: | https://investigacion.unirioja.es/documentos/5bbc687bb750603269e809af |
| Access Level: | acceso abierto |
| Palabra clave: | Isabelle/HOL Linear algebra Theorem proving Verified code generation |
| Sumario: | 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. |
|---|