Observable behavior of distributed systems: Component reasoning for concurrent objects

被引:17
作者
Din, Crystal Chang [1 ]
Dovland, Johan [1 ]
Johnsen, Einar Broch [1 ]
Owe, Olaf [1 ]
机构
[1] Univ Oslo, Dept Informat, N-0316 Oslo, Norway
来源
JOURNAL OF LOGIC AND ALGEBRAIC PROGRAMMING | 2012年 / 81卷 / 03期
关键词
Distributed systems; Object-orientation; Compositional reasoning; Hoare Logic; Concurrent objects; HOARE LOGIC;
D O I
10.1016/j.jlap.2012.01.003
中图分类号
学科分类号
摘要
Distributed and concurrent object-oriented systems are difficult to analyze due to the complexity of their concurrency, communication, and synchronization mechanisms. Rather than performing analysis at the level of code in, e.g., Java or C++, we consider the analysis of such systems at the level of an abstract, executable modeling language. This language, based on concurrent objects communicating by asynchronous method calls, avoids some difficulties of mainstream object-oriented programming languages related to compositionality and aliasing. To facilitate system analysis, compositional verification systems are needed, which allow components to be analyzed independently of their environment. In this paper, a proof system for partial correctness reasoning is established based on communication histories and class invariants. A particular feature of our approach is that the alphabets of different objects are completely disjoint. Compared to related work, this allows the formulation of a much simpler Hoare-style proof system and reduces reasoning complexity by significantly simplifying formulas in terms of the number of needed quantifiers. The soundness and relative completeness of this proof system are shown using a transformational approach from a sequential language with a non-deterministic assignment operator. (C) 2012 Elsevier Inc. All rights reserved.
引用
收藏
页码:227 / 256
页数:30
相关论文
共 30 条
[1]   Behavioral interface description of an object-oriented language with futures and promises [J].
Abraham, Erika ;
Grabe, Immo ;
Gruner, Andreas ;
Steffen, Martin .
JOURNAL OF LOGIC AND ALGEBRAIC PROGRAMMING, 2009, 78 (07) :491-518
[2]   A system for compositional verification of asynchronous objects [J].
Ahrendt, Wolfgang ;
Dylla, Maximilian .
SCIENCE OF COMPUTER PROGRAMMING, 2012, 77 (12) :1289-1309
[3]  
Ahrendt W, 2009, LECT NOTES COMPUT SC, V5885, P387, DOI 10.1007/978-3-642-10373-5_20
[4]   DEFINING LIVENESS [J].
ALPERN, B ;
SCHNEIDER, FB .
INFORMATION PROCESSING LETTERS, 1985, 21 (04) :181-185
[5]  
[Anonymous], 1985, INT SERIES COMP SCI
[6]   10 YEARS OF HOARE LOGIC - A SURVEY .2. NONDETERMINISM [J].
APT, KR .
THEORETICAL COMPUTER SCIENCE, 1984, 28 (1-2) :83-109
[7]   10 YEARS OF HOARE LOGIC - A SURVEY .1. [J].
APT, KR .
ACM TRANSACTIONS ON PROGRAMMING LANGUAGES AND SYSTEMS, 1981, 3 (04) :431-483
[8]  
Beckert B., 2007, LECT NOTES COMPUTER, V4334
[9]  
Broy M., 2001, MG COMP SCI, DOI 10.1007/978-1-4613-0091-5
[10]  
Dahl O. J., 1992, INT SERIES COMPUTER