Technical Report Number
Swarm is a computational model which extends the UNITY-model in three important ways: (1) UNITY's fixed set of variables is replaced by an unbounded set of tuples which are addressed by content rather than by name; (2) UNITY's static set of statements is replaced by a dynamic set of transactions; and (3) UNITY's static ||-composition is augmented by dynamic coupling of transactions into synchronic groups. Taking advantage of the similarities of the Swarm and UNITY computational models, we have developed a programming logic for Swarm and UNITY computational models, we have developed a programming logic for Swarm which is similar in style to that UNITY. The Swarm logic uses the same logical relations as UNITY, but the definitions of the relations have been generalized to handle the dynamic nature of Swarm, i.e. dynamically created transactions and the synchrony relations. The Swarm programming logic is the first axiomatic proof system for a shared dataspace language, i.e. a language in which communication is accomplished via a shared content-addressable data structure. To our knowledge, no axiomatic-style proof systems have been published for Linda, a production rule language, or any other shared dataspace language.
Roman, Gruia-Catalin and Cunningham, H. Conrad, "The Synchronic Group: A Concurrent Programming Concept and its Proof Logic" Report Number: WUCS-89-43 (1989). All Computer Science and Engineering Research.