Verifying Relative Error Bounds Using Symbolic Simulation
نویسندگان
چکیده
In this paper we consider the problem of formally verifying hardware that is specified to compute reciprocal, reciprocal square root, and power-of-two functions on floating point numbers to within a given relative error. Such specifications differ from the common case in which any given input is specified to have exactly one correct output. Our approach is based on symbolic simulation with binary decision diagrams, and involves two distinct steps. First, we prove a lemma that reduces the relative error specification to several inequalities that involve reasoning about natural numbers only. The most complex of these inequalities asserts that the product of several naturals is less-than/greaterthan another natural. Second, we invoke one of several customized algorithms that decides the inequality, without performing the expensive symbolic multiplications directly. We demonstrate the effectiveness of our approach on a next-generation Intel © processor design and report encouraging time and space metrics for these proofs.
منابع مشابه
Probabilistic Verification of Discrete Event Systems Using Acceptance Sampling
We propose a model independent procedure for verifying properties of discrete event systems. The dynamics of such systems can be very complex, making them hard to analyze, so we resort to methods based on Monte Carlo simulation and statistical hypothesis testing. The verification is probabilistic in two senses. First, the properties, expressed as CSL formulas, can be probabilistic. Second, the ...
متن کاملExploiting symmetry when verifying transistor - levelcircuits by symbolic trajectory
|We describe the use of symmetry for veriication of transistor-level circuits by Symbolic Trajectory Evaluation (STE). We present a new formulation of STE which allows a succint description of symmetry properties in circuits. Symmetries in circuits are classiied as structural symmetries, arising from similarities in circuit structure, data symmetries, arising from similarities in the handling o...
متن کاملSymbolic Execution for Sequential and Multi-Process Programs with Unbounded Loops
Symbolic execution is a powerful technique for automatically verifying properties of programs. Symbolic techniques have been developed for a variety of classes of assertions, to verify parallel as well as sequential programs, and even to verify functional equivalence of two programs. However, one limitation of these applications is that they typically require that constant (often small) bounds ...
متن کاملCombining ATPG and Symbolic Simulation for Efficient Validation of Embedded Array Systems
In the past, Symbolic Trajectory Evaluation (STE) has been shown to be effective for verifying individual array blocks. However, when applying STE to verify multiple array blocks together as a single system, the run-time OBDD sizes would often blow up. In this paper, we propose the use of both ATPG-based justification engine and symbolic simulation to facilitate the application of STE proof met...
متن کاملEfficient Modeling of Memory Arrays in Symbolic Ternary Simulation 1
This paper enables symbolic ternary simulation of systems with large embedded memories. Each memory array is replaced with a behavioral model, where the number of symbolic variables used to characterize the initial state of the memory is proportional to the number of distinct symbolic memory locations accessed. The behavioral model provides a conservative approximation of the replaced memory ar...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2014