A computational logic handbook
A computational logic handbook
Algorithms for computer algebra
Algorithms for computer algebra
Term rewriting and all that
Commutative algebra in the Mizar system
Journal of Symbolic Computation - Special issue on computer algebra and mechanized reasoning: selected St. Andrews' ISSAC/Calculemus 2000 contributions
Computer-Aided Reasoning: An Approach
Computer-Aided Reasoning: An Approach
Formal Proofs About Rewriting Using ACL2
Annals of Mathematics and Artificial Intelligence
A Machine-Checked Implementation of Buchberger's Algorithm
Journal of Automated Reasoning
Structured Theory Development for a Mechanized Logic
Journal of Automated Reasoning
TYPES '98 Selected papers from the International Workshop on Types for Proofs and Programs
Common Lisp: The Language
Efficient execution in an automated reasoning environment
Journal of Functional Programming
Certifying properties of an efficient functional program for computing Gröbner bases
Journal of Symbolic Computation
Gröbner bases: theory refinement in the mizar system
MKM'05 Proceedings of the 4th international conference on Mathematical Knowledge Management
Proof assistant decision procedures for formalizing origami
MKM'11 Proceedings of the 18th Calculemus and 10th international conference on Intelligent computer mathematics
Applying ACL2 to the formalization of algebraic topology: simplicial polynomials
ITP'11 Proceedings of the Second international conference on Interactive theorem proving
Formalization of a normalization theorem in simplicial topology
Annals of Mathematics and Artificial Intelligence
Hi-index | 0.00 |
In this article, we present the formal verification of a Common Lisp implementation of Buchberger's algorithm for computing Grobner 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.