Formal Refinement and Proof of a Small Java Program
@inproceedings{Clark1999FormalRA, title={Formal Refinement and Proof of a Small Java Program}, author={Tony Clark}, booktitle={ECOOP Workshops}, year={1999} }
The main components of a formal technique for specifying, refining and proving properties of object-oriented programs are presented. The technique is based on a -notation whose semantics is given using standard categorical constructs. An example of the formal development of a small Java program is presented.
One Citation
Algebraically modelling object-orientated programs
- Education
- 2006
This item is brought to you by Swansea University and must not be sold in any format or medium without the formal permission of the copyright holder.
References
SHOWING 1-10 OF 24 REFERENCES
A semantic framework for object-oriented development.
- Computer Science
- 1999
A categorical model of object-oriented systems is proposed and denoted using a-calculus to provide a deenition of design reenement from an initial user requirements by reening an initial design.
UML refinement and abstraction transformations
- Computer Science
- 1998
A set of diagrammatic transformations on UML models which represent reenement or abstraction steps are presented and it is shown how the correctness of these transformations can be justiied in a suitable semantic model of UML.
Towards a compositional interpretation of object diagrams
- Computer ScienceAlgorithmic Languages and Calculi
- 1997
We develop a compositional interpretation of object model and statechart diagrams as used in the “Syntropy” method of Object-Oriented Analysis and Design. Separate theories are constructed for object…
Rigorous Development in UML
- Computer ScienceFASE
- 1999
This paper proposes a development process using UML and other notations which supports formal analysis and verification, so enabling the notation to be used for highly critical systems.
Visualising action contracts in object-oriented modelling
- Computer ScienceIEE Proc. Softw.
- 1998
This paper builds on a recent proposal for ‘constraint diagrams’, a diagrammatic notation allowing the expression of assertions about invariants and action contracts, and focuses on their use in depicting action contracts.
Constraint diagrams: visualizing invariants in object-oriented models
- Computer ScienceOOPSLA '97
- 1997
A new visual notation is proposed for precisely expressing constraints on object-oriented models, as an alternative to mathematical logic notation used in methods such as Syntropy and Catalysis, and is reminiscent of informal diagrams used by mathematicians for illustrating relations.
A semantics for object-oriented systems
- Computer ScienceFM-Trends 1998
- 1998
This work claims that this leads to a fundamental model of object-oriented systems behaviour which can be denoted using a variety of languages, including Z, modal logics and concrete programming languages, which are chosen to suit the development method or application.
The Structure and Semantics of Actor Languages
- Computer ScienceREX Workshop
- 1990
An abstract view of actor computations in terms of event diagrams and the laws of concurrent computing is provided and how delayed evaluation, streams, continuations, higher-order functions, and other structures, can be built in Terms of actor languages are illustrated.
A layered object-oriented programming language
- Computer Science
- 1994
This paper shows how an OOPL can be constructed using a simple functional language which has been enriched with a small collection of characteristic primitives.
Sheaf Semantics for Concurrent Interacting Objects
- Computer ScienceMath. Struct. Comput. Sci.
- 1992
Concepts from sheaf theory are used to explain phenomena in concurrent systems, including object, inheritance, deadlock, and non-interference, as used in computer security, not only to concurrent object oriented systems, but also to systems of differential equations, electrical circuits, hardware description languages, and much more.