(Enter summary)
Abstract: This paper describes an approach for verifying programs in the presence of data
abstraction and information hiding, which are key features of modern programming
languages with objects and modules. The paper focuses on the property of
modular soundness, that is, the property that the separate verifications of the individual
modules of the program suffice to ensure the correctness of the composite
program. The paper introduces a new specification language construct, the abstraction
dependency,... (Update)
Cited by: More
Ensuring Invariant Contracts for Modules in Java - Andreas Roth And (2004)
(Correct)
Symbolic Execution with Separation Logic - Berdine, Calcagno, O'Hearn (2005)
(Correct)
Separation and Information Hiding - O'Hearn, Yang, Reynolds (2004)
(Correct)
Active bibliography (related documents): More All
0.6: Object Invariants in Dynamic Contexts - Leino, Müller (2004)
(Correct)
0.5: Extended Static Checking: a Ten-Year Perspective - Leino
(Correct)
0.5: Specifying the Modification of Extended State - Leino (1998)
(Correct)
Similar documents based on text: More All
1.4: Denali: A Goal-Directed Superoptimizer - Joshi, Nelson, Randall (2001)
(Correct)
1.4: Partial Replication in the Vesta Software Repository - Mann (2001)
(Correct)
1.4: Verifying Sequential Consistency on Shared-Memory Multiprocessors .. - Qadeer (2001)
(Correct)
Related documents from co-citation: More All
3: Modular specification of frame properties in JML (context) - Muller, Poetzsch-He et al. - 2002
3: Preliminary design of JML: A behavioral interface specification language for Jav..
- Leavens, Baker et al. - 1998
3: Alias types for recursive data structures
- Walker, Morrissett - 2000
BibTeX entry: (Update)
K. R. M. Leino and G. Nelson. Data abstraction and information hiding. Technical Report 160, Compaq SRC, nov 2000. http://citeseer.ist.psu.edu/leino00data.html More
@techreport{ leino00data,
author = "K. Rustan M. Leino and Greg Nelson",
title = "Data abstraction and information hiding",
number = "160",
address = "130 Lytton Avenue Palo Alto, CA 94301",
year = "2000",
url = "citeseer.ist.psu.edu/leino00data.html" }
Citations (may not include all citations):
1399
Compilers: Principles (context) - Aho, Sethi et al. - 1986
689
Systematic Software Development using VDM
- Jones - 1986 ACM
427
the criteria to be used in decomposing systems into modules (context) - Parnas - 1972
265
Proof of correctness of data representations (context) - Hoare - 1972 ACM DBLP
176
Ellis and Bjarne Stroustrup (context) - Margaret - 1990
174
Springer-Verlag (context) - Abadi, Cardelli et al. - 1996
162
Programming in Modula (context) - Wirth - 1982
141
Compaq Systems Research Center (context) - Detlefs, Rustan et al. - 1998
140
Preliminary design of JML: A behavioral interface specificat..
- Leavens, Baker et al. - 1999
106
An algebraic definition of simulation between programs (context) - Milner - 1971 ACM DBLP
101
A Discipline of Programming (context) - Dijkstra - 1976
100
Islands: Aliasing protection in object-oriented languages (context) - Hogg - 1991 DBLP
99
Correctness Preserving Program Refinements: Proof Theory and.. (context) - Back - 1980
89
Systems Programming with Modula (context) - Nelson - 1991
78
Texts and Monographs in Computer Science (context) - Dijkstra, Scholten et al. - 1990
68
Flexible alias protection
- Noble, Vitek et al. - 1998 ACM DBLP
67
Compaq Systems Research Center (context) - Rustan, Leino et al. - 2000
63
The Java TM Language Specification (context) - Gosling, Joy et al. - 1996
60
ACM Transactions on Programming Languages and Systems (context) - Nelson, of et al. - 1989
53
An axiomatic definition of the programming language PASCAL (context) - Hoare, Wirth - 1973 ACM DBLP
49
Correctness of a compiler for arithmetic expressions
- McCarthy, Painter - 1967
40
Toward Reliable Modular Programs
- Rustan, Leino - 1995 ACM
40
Laws of data refinement (context) - Morris - 1989 ACM DBLP
37
Balloon types: Controlling sharing of state in data types (context) - Almeida - 1997 DBLP
37
Alias burying: Unique variables without destructive reads (context) - Boyland
35
The programming language Oberon (context) - Wirth - 1988 ACM DBLP
30
The Mesa language manual (context) - Mitchell, Maybury et al. - 1979
29
A single complete rule for data refinement (context) - Gardiner, Morgan - 1993 DBLP
26
Aspect: Detecting bugs with abstract dependences (context) - Jackson - 1995 DBLP
22
Data groups: Specifying the modification of extended state
- Rustan, Leino - 1998
22
MIT Electrical Engineering and Computer Science Series (context) - Liskov, Guttag et al. - 1986
20
Verifying reachability invariants of linked structures (context) - Nelson - 1983 ACM DBLP
19
Ecstatic: An object-oriented programming language with an ax.. (context) - Rustan, Leino - 1997
18
The programming language Oberon (context) - Mossenbock, Wirth - 1991 ACM DBLP
17
The Programming Language Ada Reference Manual (context) - Standards, Inc - 1983
16
Recursive object types in a logic of object-oriented program..
- Rustan, Leino - 1998 ACM DBLP
16
Digital Equipment Corporation Systems Research Center (context) - Rustan, Leino et al. - 1997
14
Reasoning about aliasing
- Utting - 1995
13
OS6---an experimental operating system for a small computer (context) - Stoy, Strachey - 1972
13
Digital Equipment Corporation Systems Research Center (context) - Detlefs, Rustan et al. - 1998
12
Modular specification and verification techniques for object.. (context) - Muller, Poetzsch-Heffter - 2000 ACM
12
Constraints: A uniform approach to aliasing and typing
- Lamport, Schneider - 1985 ACM DBLP
12
Modula: a language for modular multiprogramming (context) - Wirth - 1977 DBLP
11
Compaq Systems Research Center (context) - Checking, home
9
Upgrading the pre- and postcondition technique (context) - Jonkers - 1991 ACM DBLP
9
A new notion of encapsulation (context) - Gries, Prins - 1985 ACM
7
An overview of Larch/C++: Behavioral specifications for C++ ..
- Leavens - 1996
7
Virginity: A contribution to the specification of object-ori..
- Rustan, Leino et al. - 1999 DBLP
7
The transform --- a new language construct (context) - Gries, Volpano - 1990
6
Modular verification of data abstractions with shared realiz.. (context) - Ernst, Hookway et al. - 1994 ACM DBLP
2
Extended static checking of programs with cyclic dependencie.. (context) - Joshi - 1997
The graph only includes citing articles where the year of publication is known.
Documents on the same site (http://gatekeeper.dec.com/pub/DEC/SRC/research-reports/): More
Automated Proofs of Object Code for a Widely Used Microprocessor - Yu (1992)
(Correct)
win and sin: Predicate Transformers for Currency - Lamport (1989)
(Correct)
Some Useful Modula-3 Interfaces - Horning, Kalsow, McJones, Nelson (1993)
(Correct)
Online articles have much greater impact More about CiteSeer.IST Add search form to your site Submit documents Feedback
CiteSeer.IST - Copyright Penn State and NEC