ACM Home Page
Please provide us with feedback. Feedback
An inheritance-based technique for building simulation proofs incrementally
Full text PdfPdf (337 KB)
Source International Conference on Software Engineering archive
Proceedings of the 22nd international conference on Software engineering table of contents
Limerick, Ireland
Pages: 478 - 487  
Year of Publication: 2000
ISBN:1-58113-206-9
Authors
Idit Keidar  MIT Lab for Computer Science, 545 Technology Sq., Room 367, Cambridge, MA
Roger Khazan  MIT Lab for Computer Science, 545 Technology Sq., Room 367, Cambridge, MA
Nancy Lynch  MIT Lab for Computer Science, 545 Technology Sq., Room 367, Cambridge, MA
Alex Shvartsman  University of Connecticut, Computer Science and Engineering Dept., Storrs, CT
Sponsors
IEEE-CS : Computer Society
SIGSOFT: ACM Special Interest Group on Software Engineering
Irish Comp Soc : Irish Computer Society
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 6,   Downloads (12 Months): 18,   Citation Count: 2
Additional Information:

abstract   references   cited by   index terms   collaborative colleagues  

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

ABSTRACT

This paper presents a technique for incrementally constructing safety specifications, abstract algorithm descriptions, and simulation proofs showing that algorithms meet their specifications.The technique for building specifications (and algorithms) allows a child specification (or algorithm) to inherit from its parent by two forms of incremental modification: (a) interface extension, where new forms of interaction are added to the parent's interface, and (b) specialization (subtyping), where new data, restrictions, and effects are added to the parent's behavior description. The combination of interface extension and specialization constitutes a powerful and expressive incremental modification mechanism for describing changes that do not override the behavior of the parent, although it may introduce new behavior.Consider the case when incremental modification is applied to both a parent specification S and a parent algorithm A. A proof that the child algorithm A′ implements the child specification S′ can be built incrementally upon simulation proof that algorithm A implements specification S. The new work required involves reasoning about the modifications, but does not require repetition of the reasoning in the original simulation proof.The paper presents the technique mathematically, in terms of automata. The technique has already been used to model and validate a full-fledged group communication system (see [26]); the methodology and results of that experiment are summarized in this paper.


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
 
2
 
3
ACM. Commun. ACM 39(4), special issue on Group Communications Systems, April 1996.
 
4
E. Anceaume, B. Charron-Bost, P. Minet, and S. Toueg. On the formal speci cation of group membership services. Comp. Sci. TR 95-1534, Cornell Univ., Aug. 1995.
 
5
 
6
M. Bickford and J. Hickey. An object-oriented approach to verifying group communication systems. http://www.cs.cornell.edu/jyh/papers/cav99 ooioa/.
 
7
K. Birman, R. Friedman, M. Hayden, and I. Rhee. Middleware support for distributed multimedia and collaborative computing. Multimedia Computing and Networking (MMCN98), 1998.
 
8
 
9
G. V. Chockler. An Adaptive Totally Ordered Multicast Protocol that Tolerates Partitions. Master's thesis, Institute of Computer Science, The Hebrew University of Jerusalem, Jerusalem, Israel, 1997.
 
10
11
 
12
 
13
 
14
15
 
16
 
17
 
18
S. J. Garland, N. A. Lynch, and M. Vaziri. IOA: A Language for Specifying, Programming and Validating Distributed Systems. MIT LCS, Dec. 1997. http://sds.lcs.mit.edu/~garland/ioaLanguage.html.
 
19
 
20
 
21
C. Heitmeyer and N. Lynch. The generalized railroad crossing: A case study in formal verification of realtime systems. Real Time Systems Symposium, Dec. 1994. Full version: MR-7619, Naval Research Laboratory.
 
22
 
23
 
24
25
 
26
 
27
 
28
 
29
B. Lampson. Generalizing Abstraction Functions. MIT, Laboratory for Computer Science, Principles of Computer Systems, Handout 8, 1997. ftp://theory.lcs.mit .edu/pub/classes/6.826/www/6.826-top.html.
 
30
 
31
 
32
N. Lynch and M. Tuttle. An introduction to Input/Output Automata. CWI Quart., 2(3):219{246, '89.
33
 
34
I. Shnaiderman. Implementation of Reliable Datagram Service in the LAN environment. Lab project, The Hebrew University of Jerusalem, January 1999. http://www.cs.huji.ac.il/~transis/publications.html.
 
35
36
 
37
R. Vitenberg, I. Keidar, G. V. Chockler, and D. Dolev. Group Communication Specifications: A Comprehensive Study. TR CS99-31, Institute of Comp. Science, The Hebrew University of Jerusalem, Israel, Sept. 1999.
 
38
D. Yates, N. Lynch, V. Luchangco, and M. Seltzer. I/O automaton model of operating system primitives. Master's thesis, Harvard University and MIT, May 1999.


Collaborative Colleagues:
Idit Keidar: colleagues
Roger Khazan: colleagues
Nancy Lynch: colleagues
Alex Shvartsman: colleagues