Formal Verification of Transcendental Fixed-and Floating-point Algorithms using an Automatic Theorem Prover

S Coward, L Paulson, T Drane, E Morini - Formal Aspects of Computing, 2022 - dl.acm.org
Formal Aspects of Computing, 2022dl.acm.org
We present a method for formal verification of transcendental hardware and software
algorithms that scales to higher precision without suffering an exponential growth in
runtimes. A class of implementations using piecewise polynomial approximation to compute
the result is verified using MetiTarski, an automated theorem prover, which verifies a range
of inputs for each call. The method was applied to commercial implementations from
Cadence Design Systems with significant runtime gains over exhaustive testing methods …
We present a method for formal verification of transcendental hardware and software algorithms that scales to higher precision without suffering an exponential growth in runtimes. A class of implementations using piecewise polynomial approximation to compute the result is verified using MetiTarski, an automated theorem prover, which verifies a range of inputs for each call. The method was applied to commercial implementations from Cadence Design Systems with significant runtime gains over exhaustive testing methods and was successful in proving that the expected accuracy of one implementation was overly optimistic. Reproducing the verification of a sine implementation in software, previously done using an alternative theorem-proving technique, demonstrates that the MetiTarski approach is a viable competitor. Verification of a 52-bit implementation of the square root function highlights the method’s high-precision capabilities.
ACM Digital Library
Showing the best result for this search. See all results