A framework allowing a unified and rigorous definition of the semantics of concurrency is proposed. The mathematical model introduces processes as elements of process domains which are obtained as solutions of domain equations in the sense of Scott and Plotkin. Techniques of metric topology as proposed, e.g., by Nivat are used to solve such equations. Processes are then used as meanings of statements in languages with concurrency. Three main concepts are treated, viz. parallellism (arbitrary interleaving of sequences of elementary actions), synchronization, and communication. These notions are embedded in languages which also feature classical sequential concepts such as assignment, tests, iteration or recursion, and guarded commands. In the definitions, a sequence of process domains of increasing complexity is used. The languages discussed include Milner's calculus for communicating systems and Hoare's communicating sequential processes. The paper concludes with a section with brief remarks on miscellaneous notions in concurrency. and two appendices with mathematical details.
Data types containing infinite data, such as the real numbers, functions, bit streams and waveforms, are modelled by topological many-sorted algebras. In the theory of computation on topological algebras there is a considerable gap between so-called abstract and concrete models of computation. We prove theorems that bridge the gap in the case of metric algebras with partial operations.With an abstract model of computation on an algebra, the computations are invariant under isomorphisms and do not depend on any representation of the algebra. Examples of such models are the ' while' programming language and the BCSS model. With a concrete model of computation, the computations depend on the choice of a representation of the algebra and are not invariant under isomorphisms. Usually, the representations are made from the set N of natural numbers, and computability is reduced to classical computability on N. Examples of such models are computability via effective metric spaces, effective domain representations, and type two enumerability.The theory of abstract models is stable: there are many models of computation, and conditions under which they are equivalent are largely known. The theory of concrete models is not yet stable, though it seems to be converging: several interesting models are known to be equivalent over special types of topological algebra. We investigate the problem of comparing the two types of models and, hence, establishing a unified and stable theory of computation for topological algebras.First, we show that to compute functions on topological algebras using an abstract model, it is necessary that one must use algebras with partial operations and computable functions that are continuous and multivalued. This multivaluedness is needed even to compute singlevalued functions, and so abstract models must be nondeterministic even to compute * The research of the second author was supported by a grant from the Natural Sciences and Engineering Research Council (Canada) and by a Visiting Fellowship from the Engineering and Physical Sciences Research Council (U.K.) 1 2 deterministic problems. Then we choose the ' while'-array programming language as an abstract model for computing on any data type, and extend it with a nondeterministic assignment of "countable choice". This is the new WhileCC * model. Finally, we introduce the notion of approximable multivalued computation on metric algebras. As a concrete model, we choose effective metric spaces. Among a number of results we prove the following.For any metric algebra A with an effective representation, any function WhileCC * approximable over A is computable in the effective representation of the metric algebra A. Conversely, we show that, under certain reasonable conditions on the effective metric algebra A, any function that is effective is also WhileCC * approximable. We give an equivalence theorem, and examples of algebras where equivalence holds.
Data such as real and complex numbers, discrete and continuous time data streams, waveforms, scalar and vector fields, and many other functions, are fundamental for many kinds of computation. In the theory of data, such data types are modelled using topological, or metric, many-sorted algebras and continuous homomorphisms. A theory of such topological data types is needed to answer the general questions: 1. What are the computable functions on topological algebras? 2. What methods exist to axiomatically specify functions on topological algebras? 3. Can all computable functions be specified? Such a theory seems to be in its infancy: there are many approaches to computability theory on general and specific spaces, and few approaches to specification theory. In some earlier papers, we have studied the questions 1 and 2 with the needs of data type theory in mind, and built a bridge between computations and specifications to try to answer 3. In this paper, we extend and combine several of our results, to prove new theorems that (i) show the equivalence of some six deterministic or non-deterministic models of computation on various metric algebras and, in particular, on spaces R n of real numbers; (ii) provide finite universal algebraic specifications for all the functions that can be computably approximated on metric algebras and, in particular, on Euclidean n-space R n ; (iii) show the existence of finite universal algebraic specifications of computably approximable finite dimensional deterministic dynamical systems. ୋ The research of the second author was supported by a grant from the Natural Sciences and Engineering Research Council (Canada).
A general framework for the denotational treatment of concurrency is introduced. The key idea is the notion of process which is element of a domain obtained as solution of a domain equation in the style as considered previously by Plotkin. We use tools from metric topology as advocated by Nivat to solve this equation, show how operations upon processes can be defined conveniently, and illustrate the approach with the definition of a variety of concepts as encountered in the study of concurrency. Only few proofs of the supporting mathematical theory are given; full proofs will appear in the final version of the paper.
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.
hi@scite.ai
10624 S. Eastern Ave., Ste. A-614
Henderson, NV 89052, USA
Copyright © 2024 scite LLC. All rights reserved.
Made with 💙 for researchers
Part of the Research Solutions Family.