Cavalcanti, A.L.C. and Woodcock, Jim
Angelic Nondeterminism and Unifying Theories of Programming.
University of Kent
Hoare and He have proposed unifying theories of programming (UTP): a model of alphabetised relations expressed as predicates, which provides support for program development in a number of programming paradigms. Their objective is the unification of languages and techniques, so that developers can benefit from results of works that were, until then, conflicting in their approach. They consider fundamental programming concepts like nondeterminism, specification as pre and post condition pairs, and concurrency; however, they leave the study of many constructs open. In this report, we investigate the possibility of unifying angelic nondeterminism into the UTP. We consider its general relational setting, and the more restricted setting of designs, which is the basis for all the models considered by Hoare and He. We study isomorphic models based on relations between sets of states and on predicate transformers. We conclude that the introduction of angelic nondeterminism requires a more elaborate relational framework. We proceed to propose the unification of a model of binary multirelations, which is isomorphic to the monotonic predicate transformers model and can express angelic and demonic nondeterminism.
- Depositors only (login required):