Modular Verification of SRT Division
Presented at CAV'96, New Brunswick, NJ, August 1996. © Springer-Verlag.
Authors
Harald Rueß, M.K. Srivas, N. Shankar
Abstract
We describe a formal specification and verification in {\sc PVS} for the
general theory of SRT division, and for the hardware design of a
specific implementation. The specification demonstrates how
attributes of the {\sc PVS} language (in particular, predicate subtypes)
allow the general theory to be developed in a readable manner that is
similar to textbook presentations, while the {\sc PVS} {\tt table} construct
allows direct specification of the implementation's quotient look-up
table. Verification of the derivations in the SRT theory and for the
data path and look-up table of the implementation are highly automated
and performed for arbitrary, but finite precision; in addition, the theory is
verified for general radix, while the implementation is specialized to
radix 4. The effectiveness of the automation derives from {\sc PVS}'s tight
integration of rewriting with decision procedures for equality, linear
arithmetic over integers and rationals, and propositional logic. This
example demonstrates that the resources of an expressive specification
language and of a general-purpose theorem prover are not inimical to
highly automated verification in this domain, and can contribute to
clarity, generality, and reuse.
gzipped postscript
or
postscript
BibTeX Entry
@InProceedings{RuessSrivasShankar:CAV96,
author = "Harald Rue{\ss} and N. Shankar and M. K. Srivas",
title = "Modular verification of {SRT} division",
booktitle = "Proc. of the 8th International Conference for Automated Verification (CAV'96)",
editors = "R. Alur and T. Henzinger",
series = "Lecture Notes in Computer Science",
publisher = "Springer-Verlag",
month = "July/August",
number = "1102",
year = "1996"
}
Harald Ruess:
ruess@csl.sri.com