1999
DOI: 10.1007/3-540-49099-x_11
|View full text |Cite
|
Sign up to set email alerts
|

A Programming Logic for Sequential Java

Abstract: A Hoare-style programming logic for the sequential kernel of Java is presented. It handles recursive methods, class and interface types, subtyping, inheritance, dynamic and static binding, aliasing via object references, and encapsulation. The logic is proved sound w.r.t. an SOS semantics by embedding both into higher-order logic.

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1
1

Citation Types

0
49
0

Year Published

2001
2001
2009
2009

Publication Types

Select...
7
2

Relationship

0
9

Authors

Journals

citations
Cited by 84 publications
(49 citation statements)
references
References 8 publications
0
49
0
Order By: Relevance
“…As such, our paper presents a first assertional proof method for reasoning about threads in Java which is complete in the sense that it forms a basis for extending our proof method to more specific Java-synchronization methods, such as wait(), notify(), and notifyAll(), and the important feature of exception handling [20]. Most papers in the literature focus on sequential subsets of Java [28,10,26,27], [11,31,1,32,33]. Formal semantics of Java, including multithreaded execution, and its virtual machine in terms of abstract state machines is given in [29].…”
Section: Resultsmentioning
confidence: 99%
See 1 more Smart Citation
“…As such, our paper presents a first assertional proof method for reasoning about threads in Java which is complete in the sense that it forms a basis for extending our proof method to more specific Java-synchronization methods, such as wait(), notify(), and notifyAll(), and the important feature of exception handling [20]. Most papers in the literature focus on sequential subsets of Java [28,10,26,27], [11,31,1,32,33]. Formal semantics of Java, including multithreaded execution, and its virtual machine in terms of abstract state machines is given in [29].…”
Section: Resultsmentioning
confidence: 99%
“…The research concerning Java's proof theory mainly concentrated on various aspects of sequential sublanguages (see e.g. [20,33,27]). This paper presents a proof system for multithreaded Java programs.…”
Section: Introductionmentioning
confidence: 99%
“…Unfortunately, it is unsound since it generally weakens the postcondition (even if one requires the new postcondition to imply the original one only for pre-states that satisfy the old precondition [PHM99,Par05]). The second solution does not suffer from that drawback.…”
Section: Definition 3 (Feature Redefinition Rule (Tentative))mentioning
confidence: 99%
“…There are a number of recent articles on Hoare Logics for object-oriented programming (see, e.g. [30,35,20,31,23,9]). The normal form of a program in our paper is similarly to that of [9,30].…”
Section: Law 21mentioning
confidence: 99%