Practical reasoning about invocations and implementations of pure methods

31Citations
Citations of this article
6Readers
Mendeley users who have this article in their library.

Abstract

User-defined functions used in the specification of objectoriented programs are called pure methods. Providing sound and practical support for pure methods in a verification system faces many challenges, especially when pure methods have executable implementations and can be invoked from code at run time. This paper describes a design for reasoning about pure methods in the context of sound, modular verification. The design addresses (1) how to axiomatize pure methods as mathematical functions enabling reasoning about their result values; (2) preconditions and frame conditions for pure methods enabling reasoning about the implementation of a pure method. Two important considerations of the design are that it work with object invariants and that its logical encoding be suitable for fully automatic theorem provers. The design has been implemented in the Spec# programming system. © Springer-Verlag Berlin Heidelberg 2007.

Cite

CITATION STYLE

APA

Darvas, Á., & Leino, K. R. M. (2007). Practical reasoning about invocations and implementations of pure methods. In Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics) (Vol. 4422 LNCS, pp. 336–351). Springer Verlag. https://doi.org/10.1007/978-3-540-71289-3_26

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