Affiliation:
1. Dublin City University, Ireland and Lero - the Irish Software Engineering Research Centre, Dublin, Ireland
Abstract
Nondeterminacy is a fundamental notion in computing. We show that it can be described by a general theory that accounts for it in the form in which it occurs in many programming contexts, among them specifications, competing agents, data refinement, abstract interpretation, imperative programming, process algebras, and recursion theory. Underpinning these applications is a theory of nondeterministic functions; we construct such a theory. The theory consists of an algebra with which practitioners can reason about nondeterministic functions, and a denotational model to establish the soundness of the theory. The model is based on the idea of free completely distributive lattices over partially ordered sets. We deduce the important properties of nondeterministic functions.
Funder
Science Foundation Ireland
Publisher
Association for Computing Machinery (ACM)
Reference77 articles.
1. Abramsky S. and Jung A. 1994. Domain theory. In Handbook of Logic in Computer Science S. Abramsky D. M. Gabbay and T. S. E. Maibaum Eds. Vol. 3. Clarendon Press 1--168. Abramsky S. and Jung A. 1994. Domain theory. In Handbook of Logic in Computer Science S. Abramsky D. M. Gabbay and T. S. E. Maibaum Eds. Vol. 3. Clarendon Press 1--168.
2. Countable nondeterminism and random assignment
3. Back R.-J. R. 1980. Correctness preserving program refinements: Proof theory and applications. Tract 131 Mathematisch Centrum Amsterdam. Back R.-J. R. 1980. Correctness preserving program refinements: Proof theory and applications. Tract 131 Mathematisch Centrum Amsterdam.
4. Duality in specification languages: a lattice-theoretical approach
Cited by
8 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献
1. Refinement-Based Game Semantics for Certified Abstraction Layers;Proceedings of the 35th Annual ACM/IEEE Symposium on Logic in Computer Science;2020-07-08
2. How to Calculate with Nondeterministic Functions;Lecture Notes in Computer Science;2019
3. Towards patterns for heaps and imperative lambdas;Journal of Logical and Algebraic Methods in Programming;2016-08
4. Designs with Angelic Nondeterminism;2013 International Symposium on Theoretical Aspects of Software Engineering;2013-07
5. The algebra of multirelations;Mathematical Structures in Computer Science;2013-03-18