A semantics of multiple inheritance
Information and Computation - Semantics of Data Types
Object-oriented analysis and design with applications (2nd ed.)
Object-oriented analysis and design with applications (2nd ed.)
A behavioral notion of subtyping
ACM Transactions on Programming Languages and Systems (TOPLAS)
Object-oriented software construction (2nd ed.)
Object-oriented software construction (2nd ed.)
Behavioral contracts and behavioral subtyping
Proceedings of the 8th European software engineering conference held jointly with 9th ACM SIGSOFT international symposium on Foundations of software engineering
Z: An Introduction to Formal Methods
Z: An Introduction to Formal Methods
Adding Design by Contract to the Ada Language
Ada-Europe '02 Proceedings of the 7th Ada-Europe International Conference on Reliable Software Technologies
Semantics of object-oriented languages
Semantics of object-oriented languages
An object-oriented refinement calculus with modular reasoning
An object-oriented refinement calculus with modular reasoning
Hi-index | 0.00 |
The dynamic aspects of the object-oriented paradigm have prevented the adoption of the latter for the implementation of high integrity systems using the SPARK approach. This paper presents a proposal that allows object-oriented programming in SPARK95, whereas supporting SPARK's static approach for verification by imposing a notion of behavioural subtyping between a type and all its subtypes. Behavioural subtyping supports modular reasoning through supertype abstraction, hence all proofs can be discharged based only on nominal/declared types. An example of proof is also presented.