ACM Home Page
Please provide us with feedback. Feedback
Faithful mapping of model classes to mathematical structures
Full text PdfPdf (436 KB)
Source
Foundations of Software Engineering archive
Proceedings of the 2007 conference on Specification and verification of component-based systems: 6th Joint Meeting of the European Conference on Software Engineering and the ACM SIGSOFT Symposium on the Foundations of Software Engineering table of contents
Dubrovnik, Croatia
Pages: 31 - 38  
Year of Publication: 2007
ISBN:978-1-59593-721-6
Authors
Ádám Darvas  ETH Zurich
Peter Müller  Microsoft Research
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 1,   Downloads (12 Months): 19,   Citation Count: 0
Additional Information:

abstract   references   index terms   collaborative colleagues  

Tools and Actions: Request Permissions Request Permissions    Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/1292316.1292320
What is a DOI?

ABSTRACT

Abstraction techniques are indispensable for the specification and verification of functional behavior of programs. In object-oriented specification languages like JML, a powerful abstraction technique is the use of model classes, that is, classes that are only used for specification purposes and that provide object-oriented interfaces for essential mathematical concepts such as set or relation.

While the use of model classes in specifications is natural and powerful, they pose problems for verification. Program verifiers map model classes to their underlying logics. Flaws in a model class or the mapping can easily lead to unsoundness and incompleteness.

This paper proposes an approach for the faithful mapping of model classes to mathematical structures provided by the theorem prover of the program verifier at hand. Faithfulness means that a given model class semantically corresponds to the mathematical structure it is mapped to.

Our approach enables reasoning about programs specified in terms of model classes. It also helps in writing consistent and complete model-class specifications as well as in identifying and checking redundant specifications.


REFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

 
1
Y. Bertot and P. Castran. Interactive Theorem Proving and Program Development. Coq'Art: The Calculus of Inductive Constructions. Texts in Theoretical Computer Science. Springer, 2004.
 
2
L. Burdy, A. Requet, and J.-L. Lanet. Java applet correctness: A developer-oriented approach. In FME, volume 2805 of LNCS, pages 422--439. Springer, 2003.
 
3
J. Charles. Adding Native Specifications to JML. In Formal Techniques for Java-like Programs, 2006.
 
4
 
5
A. Darvas and K. R. M. Leino. Practical reasoning about invocations and implementations of pure methods. In FASE, volume 4422 of LNCS, pages 336--351. Springer, 2007.
 
6
A. Darvas and P. Müller. Reasoning About Method Calls in Interface Specifications. JOT, 5(5):59--85, 2006.
 
7
J.-C. Filliâtre, T. Hubert, and C. Marché. The Caduceus verification tool for C programs. Tutorial and Reference Manual. 2007.
 
8
J.-C. Filliâtre and C. Marché. Multi-prover verification of C programs. In ICFEM, volume 3308 of LNCS, pages 15--29. Springer, 2004.
9
 
10
 
11
 
12
B. Jacobs and F. Piessens. Verification of programs with inspector methods. In Formal Techniques for Java-like Programs, 2006.
 
13
 
14
 
15
G. T. Leavens, E. Poll, C. Clifton, Y. Cheon, C. Ruby, D. Cok, P. Müller, and J. Kiniry. JML Reference Manual. Iowa State University, Last revised February 2007.
 
16
J. Meyer, P. Müller, and A. Poetzsch-Heffter. The JIVE system---implementation description. 2000.
 
17
M. Miragliotta. Specification model library for the interactive program prover JIVE. ETH Zurich, Semester Thesis, 2004.
 
18
T. Nipkow, L. C. Paulson, and M. Wenzel. Isabelle/HOL -- A Proof Assistant for Higher-Order Logic, volume 2283 of LNCS. Springer, 2002.
 
19
T. Nipkow, L. C. Paulson, and M. Wenzel. Theory HOL/Set from "The Isabelle Library". isabelle.in.tum.de/library/HOL/Set.html, 2005.
 
20
B. Schoeller. Strengthening Eiffel contracts using models. In Formal Aspects of Component Software, 2003.
 
21
B. Schoeller, T. Widmer, and B. Meyer. Making specifications complete through models. In Architecting Systems with Trustworthy Components, volume 3938 of LNCS. Springer, 2006.
 
22
N. Shankar, S. Owre, and J. M. Rushby. A Tutorial on Specification and Verification Using PVS (Beta Release). Technical report, Computer Science Laboratory, SRI International, March 1993.

Collaborative Colleagues:
Ádám Darvas: colleagues
Peter Müller: colleagues