A logic for the description of nondeterministic programs and their properties
Information and Control
A theoretical basis for stepwise refinement and the programming calculus
Science of Computer Programming
A refinement calculus for specifications in Hennessy-Milner logic with recursion
Formal Aspects of Computing
Programming from specifications
Programming from specifications
Knowledge-oriented programming
PODC '93 Proceedings of the twelfth annual ACM symposium on Principles of distributed computing
ACM Transactions on Programming Languages and Systems (TOPLAS)
Reasoning about knowledge
A refinement logic for the Fork Calculus
PSTV '94 Proceedings of the fourteenth of a series of annual meetings on Protocol specification, testing and verification XIV
An axiomatic basis for computer programming
Communications of the ACM
Refinement Calculus: A Systematic Introduction
Refinement Calculus: A Systematic Introduction
Knowledge and the logic of local propositions
TARK '98 Proceedings of the 7th conference on Theoretical aspects of rationality and knowledge
Top-Down Considerations on Distributed Computing
DISC '98 Proceedings of the 12th International Symposium on Distributed Computing
A Program Refinement Framework Supporting Reasoning about Knowledge and Time
FOSSACS '00 Proceedings of the Third International Conference on Foundations of Software Science and Computation Structures: Held as Part of the Joint European Conferences on Theory and Practice of Software,ETAPS 2000
Hi-index | 0.00 |
This paper introduces the semantics of a wide spectrum language with a rich compositional structure that is able to represent both temporal specifications and sequential programs. A key feature of the language is the ability to represent partial correctness annotations expressed in temporal logic. A refinement relation is presented that enables refinement steps to make use of these partial correctness assertions. It is argued by means of an example that the approach presented allows for more flexible reasoning using temporal annotations than previous approaches, and that the added flexibility has significant value for program optimization.