Developing Components in the Presence of Re-entrance
FM '99 Proceedings of the Wold Congress on Formal Methods in the Development of Computing Systems-Volume II
A Foundation for Refining Concurrent Objects
Fundamenta Informaticae
A Foundation for Refining Concurrent Objects
Fundamenta Informaticae
Hi-index | 0.00 |
We study program states that are described as tuples, i.e., product state spaces. Modeling programs as predicate transformers, we define a product operator on program statements that describes the independent execution of statements on disjoint state spaces. The algebraic properties of this product operator are studied, in particular the basic monotonicity and distributivity properties that the operator has, and their applications. We also consider how to extend the state space by adding new state components, and show how this is modeled using the product operator. Finally, we show how products are useful to formulate data refinement, both as a general concept and as a technique for replacing local state components of program blocks.