A Mechanically Checked Proof of the AMD5K86TM Floating-Point Division Program
IEEE Transactions on Computers
Using PVS to validate the algorithms of an exact arithmetic
Theoretical Computer Science - Real numbers and computers
Formal Verification of Floating Point Trigonometric Functions
FMCAD '00 Proceedings of the Third International Conference on Formal Methods in Computer-Aided Design
Verifying the Accuracy of Polynomial Approximations in HOL
TPHOLs '97 Proceedings of the 10th International Conference on Theorem Proving in Higher Order Logics
A Machine-Checked Theory of Floating Point Arithmetic
TPHOLs '99 Proceedings of the 12th International Conference on Theorem Proving in Higher Order Logics
PVS: A Prototype Verification System
CADE-11 Proceedings of the 11th International Conference on Automated Deduction: Automated Deduction
Guaranteed Proofs Using Interval Arithmetic
ARITH '05 Proceedings of the 17th IEEE Symposium on Computer Arithmetic
Software Manual for the Elementary Functions (Prentice-Hall series in computational mathematics)
Software Manual for the Elementary Functions (Prentice-Hall series in computational mathematics)
Affine functions and series with co-inductive real numbers
Mathematical Structures in Computer Science
Extending a resolution prover for inequalities on elementary functions
LPAR'07 Proceedings of the 14th international conference on Logic for programming, artificial intelligence and reasoning
Certified exact real arithmetic using co-induction in arbitrary integer base
FLOPS'08 Proceedings of the 9th international conference on Functional and logic programming
Real number calculations and theorem proving
TPHOLs'05 Proceedings of the 18th international conference on Theorem Proving in Higher Order Logics
Formal Verification of Exact Computations Using Newton's Method
TPHOLs '09 Proceedings of the 22nd International Conference on Theorem Proving in Higher Order Logics
Hi-index | 0.00 |
When handling proofs of properties in the real world we often need to assert that one numeric quantity is greater than another. When these numeric quantities are real-valued, it is often tempting to get out the calculator to calculate the values of the expressions and then enter the results directly into the theorem prover as "facts" or axioms, since formally proving the desired properties can often be very tiresome. Obviously, such a procedure poses a few risks.An alternative approach, presented in this paper, is to prove the correctness of an arbitrarily accurate calculator for the reals. If this calculator is expressed in terms of the underlying integer arithmetic operations of the theorem-prover's implementation language, then there is a reasonable expectation that a practical evaluator of real-valued expressions may have been constructed.Obviously, there are some constraints imposed by computability theory. It is well known, for example, that it is not possible to determine the sign of a computable real in finite time. We show that for all practical purposes, we need not worry about such fussy details. After all, mathematicians have --- throughout the centuries --- been prepared to make such calculations without being overly punctilious about the computability of the operations they were performing!We report on the experience of validating and using a real number calculator in PVS.