A verified Common Lisp implementation of Buchberger's algorithm in ACL2

In this article, we present the formal verification of a Common Lisp implementation of Buchberger's algorithm for computing Gröbner bases of polynomial ideals. This work is carried out in ACL2, a system which provides an integrated environment where programming (in a pure functional subset of C...

Descripción completa

Detalles Bibliográficos
Autores: Medina Bulo, Inmaculada, Palomo Lozano, Francisco, Ruiz Reina, José Luis
Tipo de recurso: artículo
Estado:Versión enviada para evaluación y publicación
Fecha de publicación:2010
País:España
Institución:Universidad de Sevilla (US)
Repositorio:idUS. Depósito de Investigación de la Universidad de Sevilla
OAI Identifier:oai:idus.us.es:11441/86196
Acceso en línea:https://hdl.handle.net/11441/86196
https://doi.org/10.1016/j.jsc.2009.07.002
Access Level:acceso abierto
Palabra clave:Formal verification
ACL2
Computer Algebra
Buchberger's algorithm
Descripción
Sumario:In this article, we present the formal verification of a Common Lisp implementation of Buchberger's algorithm for computing Gröbner bases of polynomial ideals. This work is carried out in ACL2, a system which provides an integrated environment where programming (in a pure functional subset of Common Lisp) and formal verification of programs, with the assistance of a theorem prover, are possible. Our implementation is written in a real programming language and it is directly executable within the ACL2 system or any compliant Common Lisp system. We provide here snippets of real verified code, discuss the formalization details in depth, and present quantitative data about the proof effort.