Constructing recursion operators in intuitionistic type theory
Journal of Symbolic Computation
Information and Computation - Semantics of Data Types
Conception, evolution, and application of functional programming languages
ACM Computing Surveys (CSUR)
Journal of Symbolic Computation
Gro¨bner bases: a computational approach to commutative algebra
Gro¨bner bases: a computational approach to commutative algebra
Computer algebra (2nd ed.): systems and algorithms for algebraic computation
Computer algebra (2nd ed.): systems and algorithms for algebraic computation
A Machine-Checked Implementation of Buchberger's Algorithm
Journal of Automated Reasoning
Interactive Theorem Proving and Program Development
Interactive Theorem Proving and Program Development
VoDKA: Developing a Video-on-Demand Server using Distributed Functional Programming
Journal of Functional Programming
Using Coq to Prove Properties of the Cache Level of a Functional Video-on-Demand Server
Proceedings of the 9th AISC international conference, the 15th Calculemas symposium, and the 7th international MKM conference on Intelligent Computer Mathematics
A verified Common Lisp implementation of Buchberger's algorithm in ACL2
Journal of Symbolic Computation
Hi-index | 0.00 |
This paper explores the certification of properties of an efficient functional program in the area of symbolic computation: the calculation of Gröbner basis of a set of multivariate polynomials. Our experience in the development of industrial systems and the certification of some of its relevant properties has led us to use a methodology consisting of functional programs to write the code and the formal verification of fundamental properties. The functional language OBJECTIVE CAML has been chosen to implement the program. To verify the properties two approaches are explored: manual proofs that reason directly over the source code of the algorithms, applying techniques like equational reasoning, and theorem provers that are used as a tool to help us certify a model of the real system. The chosen proof assistant is COQ. Not only will the certification of the software be taken into consideration but also its efficiency. In addition, we present a graphical interface which eases the use of the program.