Results 1 
4 of
4
Defining the IEEE854 FloatingPoint Standard in PVS
 in PVS. Technical Memorandum 110167, NASA, Langley Research
, 1995
"... A significant portion of the ANSI/IEEE854 Standard for RadixIndependent FloatingPoint Arithmetic is defined in PVS (Prototype Verification System). Since IEEE854 is a generalization of the ANSI/IEEE754 Standard for Binary FloatingPoint Arithmetic, the definition of IEEE854 in PVS also formall ..."
Abstract

Cited by 29 (3 self)
 Add to MetaCart
A significant portion of the ANSI/IEEE854 Standard for RadixIndependent FloatingPoint Arithmetic is defined in PVS (Prototype Verification System). Since IEEE854 is a generalization of the ANSI/IEEE754 Standard for Binary FloatingPoint Arithmetic, the definition of IEEE854 in PVS also formally defines much of IEEE754. This collection of PVS theories provides a basis for machine checked verification of floatingpoint systems. This formal definition illustrates that formal specification techniques are sufficiently advanced that it is reasonable to consider their use in the development of future standards. keywords: Floatingpoint arithmetic, Formal Methods, Specification, Verification. 1 Introduction This document describes a definition of the ANSI/IEEE854 [3] Standard for RadixIndependent FloatingPoint Arithmetic in the PVS verification system (developed at SRI International) [4]. IEEE854 is a generalization of the ANSI/IEEE754 [2] Standard for Binary FloatingPoint Ari...
Using model checking with symbolic execution to verify parallel numerical programs
 In: ISSTA (2006
"... We present a method to verify the correctness of parallel programs that perform complex numerical computations, including computations involving floatingpoint arithmetic. The method requires that a sequential version of the program be provided, to serve as the specification for the parallel one. Th ..."
Abstract

Cited by 28 (2 self)
 Add to MetaCart
We present a method to verify the correctness of parallel programs that perform complex numerical computations, including computations involving floatingpoint arithmetic. The method requires that a sequential version of the program be provided, to serve as the specification for the parallel one. The key idea is to use model checking, together with symbolic computation, to establish the equivalence of the two programs. 1.
Specification of the IEEE854 FloatingPoint Standard in HOL and PVS
, 1995
"... The IEEE854 Standard for radixindependent floatingpoint arithmetic has been partially defined within two mechanical verification systems. We present the specification of key parts of the standard in both HOL and PVS. This effort to formalize IEEE854 has given the opportunity to compare the st ..."
Abstract

Cited by 24 (1 self)
 Add to MetaCart
The IEEE854 Standard for radixindependent floatingpoint arithmetic has been partially defined within two mechanical verification systems. We present the specification of key parts of the standard in both HOL and PVS. This effort to formalize IEEE854 has given the opportunity to compare the styles imposed by the two verification systems on the specification.
Combining Symbolic Execution with Model Checking to Verify Parallel Numerical Programs
"... We present a method to verify the correctness of parallel programs that perform complex numerical computations, including computations involving floatingpoint arithmetic. This method requires that a sequential version of the program be provided, to serve as the specification for the parallel one. T ..."
Abstract

Cited by 16 (4 self)
 Add to MetaCart
We present a method to verify the correctness of parallel programs that perform complex numerical computations, including computations involving floatingpoint arithmetic. This method requires that a sequential version of the program be provided, to serve as the specification for the parallel one. The key idea is to use model checking, together with symbolic execution, to establish the equivalence of the two programs. In this approach the path condition from symbolic execution of the sequential program is used to constrain the search through the parallel program. To handle floatingpoint operations, three different types of equivalence are supported. Several examples are presented, demonstrating the approach and actual errors that were found. Limitations and directions for future research are also described.