Indeterminacy In Concurrent Computation
   HOME

TheInfoList



OR:

Indeterminacy in concurrent computation is concerned with the effects of indeterminacy in
concurrent computation Concurrent computing is a form of computing in which several computations are executed ''Concurrency (computer science), concurrently''—during overlapping time periods—instead of ''sequentially—''with one completing before the next starts. ...
. Computation is an area in which indeterminacy is becoming increasingly important because of the massive increase in concurrency due to networking and the advent of
many-core Manycore processors are special kinds of multi-core processors designed for a high degree of Parallel processing (computing), parallel processing, containing numerous simpler, independent processor cores (from a few tens of cores to thousands or mo ...
computer architectures. These computer systems make use of arbiters which gives rise to indeterminacy.


A supposed limitation of logic programming

Patrick Hayes
973 Year 973 ( CMLXXIII) was a common year starting on Wednesday of the Julian calendar. Events By place Byzantine Empire * Spring – The Byzantine army, led by General Melias ( Domestic of the Schools in the East), continues the op ...
argued that the "usual sharp distinction that is made between the processes of computation and deduction, is misleading".
Robert Kowalski Robert Anthony Kowalski (born 15 May 1941) is an American-British logician and computer scientist, whose research is concerned with developing both human-oriented models of computing and computational models of human thinking. He has spent most ...
developed the thesis that ''computation could be subsumed by deduction'' and quoted with approval "Computation is controlled deduction." which he attributed to Hayes in his 1988 paper on the early history of Prolog. Contrary to Kowalski and Hayes, Carl Hewitt claimed that logical deduction was incapable of carrying out concurrent computation in open systems. Hewitt
985 Year 985 ( CMLXXXV) was a common year starting on Thursday of the Julian calendar. Events By place Europe * Summer – Henry II (the Wrangler) is restored as duke of Bavaria by Empress Theophanu and her mother-in-law Adelaide at an ...
and Agha
991 Year 991 (Roman numerals, CMXCI) was a common year starting on Thursday of the Julian calendar. Events * March 1: In Rouen, Pope John XV ratifies the first Peace and Truce of God, Truce of God, between Æthelred the Unready and Richard I o ...
and other published work argued that mathematical models of concurrency did not determine particular concurrent computations as follows: The Actor model makes use of arbitration (often in the form of notional arbiters) for determining which message is next in the arrival ordering of an Actor who is sent multiple messages concurrently. This introduces indeterminacy in the arrival order. Since the arrival orderings are indeterminate, they cannot be deduced from prior information by mathematical logic alone. Therefore, mathematical logic cannot implement concurrent computation in open systems. The authors claim that although mathematical logic cannot, in their view, implement general concurrency it can implement some special cases of concurrent computation, e.g., sequential computation and some kinds of
parallel computing Parallel computing is a type of computing, computation in which many calculations or Process (computing), processes are carried out simultaneously. Large problems can often be divided into smaller ones, which can then be solved at the same time. ...
including the
lambda calculus In mathematical logic, the lambda calculus (also written as ''λ''-calculus) is a formal system for expressing computability, computation based on function Abstraction (computer science), abstraction and function application, application using var ...
.


Arrival order indeterminacy

According to Hewitt, in concrete terms for Actor systems, typically we cannot observe the details by which the arrival order of messages for an Actor is determined. Attempting to do so affects the results and can even push the indeterminacy elsewhere. e.g., see
metastability in electronics In electronics, metastability is the ability of a digital electronic system to persist for an unbounded time in an unstable equilibrium or metastable state. In digital logic circuits, a digital signal is required to be within certain voltage or ...
and arbiters. Instead of observing the internals of arbitration processes of Actor computations, we await outcomes. Indeterminacy in arbiters produces indeterminacy in Actors. The reason that we await outcomes is that we have no alternative because of indeterminacy. It is important to be clear about the basis for the published claim about the limitation of mathematical logic. It was not just that Actors could not, in general, be implemented in mathematical logic. The published claim was that because of the indeterminacy of the physical basis of the Actor model, that no kind of deductive mathematical logic could escape the limitation. This became important later when researchers attempted to extend
Prolog Prolog is a logic programming language that has its origins in artificial intelligence, automated theorem proving, and computational linguistics. Prolog has its roots in first-order logic, a formal logic. Unlike many other programming language ...
(which had some basis in
logic programming Logic programming is a programming, database and knowledge representation paradigm based on formal logic. A logic program is a set of sentences in logical form, representing knowledge about some problem domain. Computation is performed by applyin ...
) to concurrent computation using message passing. (See the section below). What does the mathematical theory of Actors have to say about this? A ''closed'' system is defined to be one which does not communicate with the outside. Actor model theory provides the means to characterize all the possible computations of a closed Actor system using the Representation Theorem ewitt 2007as follows:
:The mathematical denotation denoted by a closed system is found by constructing increasingly better approximations from an initial behavior called using a behavior approximating function to construct a denotation (meaning ) for as follows: ::\mathbf_ \equiv \lim_ \mathbf_(\bot_\mathtt)
In this way, the behavior of can be mathematically characterized in terms of all its possible behaviors (including those involving unbounded nondeterminism). So mathematical logic can characterize (as opposed to implement) all the possible computations of a closed Actor system.


A limitation of logic due to lack of information

An open Actor system is one in which the addresses of outside Actors can be passed into in the middle of computations so that can communicate with these outside Actors. These outside Actors can then in turn communicate with Actors internal to using addresses supplied to them by . Due to the limitation of the inability to deduce arrival orderings, knowledge of what messages are sent from outside would not enable the response of to be deduced. When other models of concurrent systems (e.g.,
process calculi In computer science, the process calculi (or process algebras) are a diverse family of related approaches for formally modelling concurrent systems. Process calculi provide a tool for the high-level description of interactions, communications, and ...
) are used to implement open systems, these systems also can have behavior that depends on arrival time orderings and so cannot be implemented by logical deduction.


Prolog-like concurrent systems were claimed to be based on mathematical logic

Keith Clark, Hervé Gallaire, Steve Gregory, Vijay Saraswat, Udi Shapiro, Kazunori Ueda, etc. developed a family of
Prolog Prolog is a logic programming language that has its origins in artificial intelligence, automated theorem proving, and computational linguistics. Prolog has its roots in first-order logic, a formal logic. Unlike many other programming language ...
-like concurrent message passing systems using unification of shared variables and data structure streams for messages. This kind of system was used as the basis of the Japanese Fifth Generation Project (ICOT). Carl Hewitt and Gul Agha
991 Year 991 (Roman numerals, CMXCI) was a common year starting on Thursday of the Julian calendar. Events * March 1: In Rouen, Pope John XV ratifies the first Peace and Truce of God, Truce of God, between Æthelred the Unready and Richard I o ...
argued that these Prolog-like concurrent systems were neither deductive nor logical: like the Actor model, the Prolog-like concurrent systems were based on message passing and consequently were subject to the same indeterminacy.


Logical operations and system efficiency

Hewitt maintained that a basic lesson can be learned from Prolog and the Prolog-like concurrent systems: a universal model of concurrent computation is limited by having any mandatory overhead in the basic communication mechanisms. This is an argument against including pattern-directed invocation using unification and extraction of messages from data structure streams as fundamental primitives. But compare Shapiro's survey of Prolog-like concurrent programming languages for arguments for inclusion.


Indeterminacy in other models of computation

Arbitration is the basis of the indeterminacy in the
Actor model The actor model in computer science is a mathematical model of concurrent computation that treats an ''actor'' as the basic building block of concurrent computation. In response to a message it receives, an actor can: make local decisions, create ...
of concurrent computation (see History of the Actor model and Actor model theory). It may also play a role in other models of concurrent systems, such as
process calculi In computer science, the process calculi (or process algebras) are a diverse family of related approaches for formally modelling concurrent systems. Process calculi provide a tool for the high-level description of interactions, communications, and ...
.


See also

*
Quantum computing A quantum computer is a computer that exploits quantum mechanical phenomena. On small scales, physical matter exhibits properties of wave-particle duality, both particles and waves, and quantum computing takes advantage of this behavior using s ...
*
Randomized algorithm A randomized algorithm is an algorithm that employs a degree of randomness as part of its logic or procedure. The algorithm typically uses uniformly random bits as an auxiliary input to guide its behavior, in the hope of achieving good performan ...
*
Non-deterministic Turing machine In theoretical computer science, a nondeterministic Turing machine (NTM) is a theoretical model of computation whose governing rules specify more than one possible action when in some given situations. That is, an NTM's next state is ''not'' comp ...


References

* Carl Hewitt ''What is computation? Actor Model versus Turing's Model'' in A Computable Universe: Understanding Computation & Exploring Nature as Computation. Dedicated to the memory of Alan M. Turing on the 100th anniversary of his birth. Edited by Hector Zenil. World Scientific Publishing Company. 2012 *Carl Hewitt. PLANNER: A Language for Proving Theorems in Robots
IJCAI The International Joint Conference on Artificial Intelligence (IJCAI) is a conference in the field of artificial intelligence. The conference series has been organized by the nonprofit IJCAI Organization since 1969.Jointly sponsored by the IJCAI O ...
1969. *Carl Hewitt. Procedural Embedding of Knowledge In Planner IJCAI 1971. *Carl Hewitt, Peter Bishop and Richard Steiger. A Universal Modular Actor Formalism for Artificial Intelligence IJCAI 1973. *
Robert Kowalski Robert Anthony Kowalski (born 15 May 1941) is an American-British logician and computer scientist, whose research is concerned with developing both human-oriented models of computing and computational models of human thinking. He has spent most ...
Predicate Logic as Programming Language Memo 70, Department of Artificial Intelligence,
Edinburgh University The University of Edinburgh (, ; abbreviated as ''Edin.'' in post-nominals) is a public research university based in Edinburgh, Scotland. Founded by the town council under the authority of a royal charter from King James VI in 1582 and offi ...
. 1973. *Pat Hayes. Computation and Deduction Mathematical Foundations of Computer Science: Proceedings of Symposium and Summer School, Štrbské Pleso, High Tatras, Czechoslovakia, September 3–8, 1973. *Carl Hewitt and Henry Baker Laws for Communicating Parallel Processes IFIP-77, August 1977. *Carl Hewitt. Viewing Control Structures as Patterns of Passing Messages Journal of Artificial Intelligence. June 1977. *Henry Baker. Actor Systems for Real-Time Computation MIT EECS Doctoral Dissertation. January 1978. *Bill Kornfeld and Carl Hewitt. The Scientific Community Metaphor IEEE Transactions on Systems, Man, and Cybernetics. January 1981. *Will Clinger. Foundations of Actor Semantics
MIT The Massachusetts Institute of Technology (MIT) is a private research university in Cambridge, Massachusetts, United States. Established in 1861, MIT has played a significant role in the development of many areas of modern technology and sc ...
Mathematics Doctoral Dissertation. June 1981. *Carl Hewitt. The Challenge of Open Systems Byte Magazine. April 1985. Reprinted in ''The foundation of artificial intelligence–a sourcebook'' Cambridge University Press. 1990. *Gul Agha. '
Actors: A Model of Concurrent Computation in Distributed Systems
'' Doctoral Dissertation. MIT Press. 1986. *Robert Kowalski. The limitation of logic Proceedings of the 1986 ACM 14th Annual Conference on Computer science. *Ehud Shapiro (Editor). Concurrent Prolog
MIT Press The MIT Press is the university press of the Massachusetts Institute of Technology (MIT), a private research university in Cambridge, Massachusetts. The MIT Press publishes a number of academic journals and has been a pioneer in the Open Ac ...
. 1987. *Robert Kowalski. The Early Years of Logic Programming
Communications of the ACM ''Communications of the ACM'' (''CACM'') is the monthly journal of the Association for Computing Machinery (ACM). History It was established in 1958, with Saul Rosen as its first managing editor. It is sent to all ACM members. Articles are i ...
. January 1988. *Ehud Shapiro. The family of concurrent logic programming languages
ACM Computing Surveys ''ACM Computing Surveys'' is peer-reviewed quarterly scientific journal and is published by the Association for Computing Machinery. It publishes survey articles and tutorials related to computer science and computing. The journal was established i ...
. September 1989. *Carl Hewitt and Gul Agha. Guarded Horn clause languages: are they deductive and Logical? International Conference on Fifth Generation Computer Systems, Ohmsha 1988. Tokyo. Also in ''Artificial Intelligence at MIT'', Vol. 2. MIT Press 1991. *Carl Hewitt. *Carl Hewitt. '
The repeated demise of logic programming and why it will be reincarnated
'' What Went Wrong and Why: Lessons from AI Research and Applications. Technical Report SS-06-08. AAAI Press. March 2006.


External links


Hewitt, Meijer and Szyperski: The Actor Model (everything you wanted to know, but were afraid to ask)
Microsoft Channel 9. April 9, 2012. {{Concurrent computing Actor model (computer science) Determinism Logic programming