Software verification with integrated data type refinement for integer arithmetic

14Citations
Citations of this article
3Readers
Mendeley users who have this article in their library.
Get full text

Abstract

We present an approach to integrating the refinement relation between infinite integer types (used in specification languages) and finite integer types (used in programming languages) into software verification calculi. Since integer types in programming languages have finite ranges, in general they are not a correct data refinement of the mathematical integers usually used in specification languages. Ensuring the correctness of such a refinement requires generating and verifying additional proof obligations. We tackle this problem considering JAVA and UML/OCL as example. We present a sequent calculus for JAVA integer arithmetic with integrated generation of refinement proof obligations. Thus, there is no explicit refinement relation, such that the arising complications remain (as far as possible) hidden from the user. Our approach has been implemented as part of the KeY system. © Springer-Verlag 2004.

Cite

CITATION STYLE

APA

Beckert, B., & Schlager, S. (2004). Software verification with integrated data type refinement for integer arithmetic. Lecture Notes in Computer Science (Including Subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics), 2999, 207–226. https://doi.org/10.1007/978-3-540-24756-2_12

Register to see more suggestions

Mendeley helps you to discover research relevant for your work.

Already have an account?

Save time finding and organizing research with Mendeley

Sign up for free