Behavioral Subtyping, Specification Inheritance, and Modular Reasoning

Behavioral Subtyping, Specification Inheritance, and Modular Reasoning
复制标题

行为子类型、规范继承和模块化推理

DOI:
--
复制
发表时间:
2015
影响因子:
1.3
通讯作者:
D. Naumann
D. Naumann
中科院分区:
计算机科学2区
文献类型:
--
作者:
G. Leavens;D. Naumann

文献摘要

参考文献

被引文献

相似文献

验证动态派遣的方法呼叫E.M()似乎取决于E的动态类型,以避免案例分析并允许以对象为导向的程序验证使用Supertype抽象。 E静态类型的规范是有效的对于Supertype抽象的有效性。
Verification of a dynamically dispatched method call, E.m(), seems to depend on E’s dynamic type. To avoid case analysis and allow incremental development, object-oriented program verification uses supertype abstraction. In other words, one reasons about E.m() using m’s specification for E’s static type. Supertype abstraction is valid when each subtype in the program is a behavioral subtype. This article semantically formalizes supertype abstraction and behavioral subtyping for a Java-like sequential language with mutation and proves that behavioral subtyping is both necessary and sufficient for the validity of supertype abstraction. Specification inheritance, as in JML, is also formalized and proved to entail behavioral subtyping.
DOI: 10.1145/964001.964024
发表时间: 2004-01
期刊: Proceedings of the 31st ACM SIGPLAN-SIGACT symposium on Principles of programming languages
影响因子: --
作者:
P. O'Hearn;Hongseok Yang;J. C. Reynolds
通讯作者: P. O'Hearn;Hongseok Yang;J. C. Reynolds
DOI: 10.1016/j.tcs.2010.09.021
发表时间: 2010
影响因子: 1.1
作者:
Filipovic I
通讯作者: Filipovic I