Invariance and non-determinacy
Proc. of a discussion meeting of the Royal Society of London on Mathematical logic and programming languages
Communicating sequential processes
Communicating sequential processes
An example of stepwise refinement of distributed programs: quiescence detection
ACM Transactions on Programming Languages and Systems (TOPLAS) - The MIT Press scientific computation series
Fairness
Current trends in concurrency. Overviews and tutorials
Temporal logic of programs
ACM Transactions on Programming Languages and Systems (TOPLAS)
A new and efficient implementation of multiprocess synchronization
Volume II: Parallel Languages on PARLE: Parallel Architectures and Languages Europe
Appraising fairness in distributed languages
POPL '87 Proceedings of the 14th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
Computer networks
Concepts and Notations for Concurrent Programming
ACM Computing Surveys (CSUR)
Synchronization in Distributed Programs
ACM Transactions on Programming Languages and Systems (TOPLAS)
An Effective Implementation for the Generalized Input-Output Construct of CSP
ACM Transactions on Programming Languages and Systems (TOPLAS)
Communicating sequential processes
Communications of the ACM - Special 25th Anniversary Issue
Time, clocks, and the ordering of events in a distributed system
Communications of the ACM
On-the-fly garbage collection: an exercise in cooperation
Communications of the ACM
An axiomatic basis for computer programming
Communications of the ACM
A Discipline of Programming
How to cook a temporal proof system for your pet language
POPL '83 Proceedings of the 10th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
Stepwise Removal of Virtual Channels in Distributed Algorithms
Proceedings of the 2nd International Workshop on Distributed Algorithms
Serializability in Distributed Systems with Handshaking
ICALP '88 Proceedings of the 15th International Colloquium on Automata, Languages and Programming
A New Class of High Level Programs for Distributed Computing Systems
Proceedings of the Fifth Conference on Foundations of Software Technology and Theoretical Computer Science
Selected Papers from the First and the Second European Workshop on Application and Theory of Petri Nets
Decentralization of process nets with centralized control
PODC '83 Proceedings of the second annual ACM symposium on Principles of distributed computing
Script: A communication abstraction mechanism
PODC '83 Proceedings of the second annual ACM symposium on Principles of distributed computing
Fair termination of communicating processes
PODC '84 Proceedings of the third annual ACM symposium on Principles of distributed computing
Synchronization of asynchronous processes in CSP
ACM Transactions on Programming Languages and Systems (TOPLAS)
Design by decomposition of multiparty interactions in Raddle87
IWSSD '89 Proceedings of the 5th international workshop on Software specification and design
Action system approach to the specification and design of distributed systems
IWSSD '89 Proceedings of the 5th international workshop on Software specification and design
Multiparty Interactions for Interprocess Communication and Synchronization
IEEE Transactions on Software Engineering
An associated object model for distributed systems
ACM SIGOPS Operating Systems Review
Fairness and hyperfairness in multi-party interactions
POPL '90 Proceedings of the 17th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Coordinating first-order multiparty interactions
POPL '91 Proceedings of the 18th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Object-oriented specification of reactive systems
ICSE '90 Proceedings of the 12th international conference on Software engineering
Stepwise design of real-time systems
SIGSOFT '91 Proceedings of the conference on Software for citical systems
A stepwise refinement heuristic for protocol construction
ACM Transactions on Programming Languages and Systems (TOPLAS)
A comprehensive study of the complexity of multiparty interaction
POPL '92 Proceedings of the 19th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
An introduction to assertional reasoning for concurrent systems
ACM Computing Surveys (CSUR)
A hierarchical structure for fault tolerant reactive programs
SAC '93 Proceedings of the 1993 ACM/SIGAPP symposium on Applied computing: states of the art and practice
Compositional specification and verification of distributed systems
ACM Transactions on Programming Languages and Systems (TOPLAS)
Coordinating first-order multiparty interactions
ACM Transactions on Programming Languages and Systems (TOPLAS)
PODC '94 Proceedings of the thirteenth annual ACM symposium on Principles of distributed computing
Specifying user interfaces in DisCo
ACM SIGCHI Bulletin
Efficient fault-tolerant algorithms for distributed resource allocation
ACM Transactions on Programming Languages and Systems (TOPLAS)
Interconnecting formalisms: supporting modularity, reuse and incrementality
SIGSOFT '95 Proceedings of the 3rd ACM SIGSOFT symposium on Foundations of software engineering
A comprehensive study of the complexity of multiparty interaction
Journal of the ACM (JACM)
On strong-feasibilities of equivalence-completions
PODC '96 Proceedings of the fifteenth annual ACM symposium on Principles of distributed computing
Synthesis of concurrent systems with many similar processes
ACM Transactions on Programming Languages and Systems (TOPLAS)
Self-Stabilizing Strong Fairness under Weak Fairness
IEEE Transactions on Parallel and Distributed Systems
Architectural primitives for distribution and mobility
Proceedings of the 10th ACM SIGSOFT symposium on Foundations of software engineering
Architectural primitives for distribution and mobility
ACM SIGSOFT Software Engineering Notes
A UNITY-Style Programming Logic for Shared Dataspace Programs
IEEE Transactions on Parallel and Distributed Systems
Dynamic Synchrony Among Atomic Actions
IEEE Transactions on Parallel and Distributed Systems
Fault-Tolerant Algorithms for Fair Interprocess Synchronization
IEEE Transactions on Parallel and Distributed Systems
Stepwise Design of Real-Time Systems
IEEE Transactions on Software Engineering
Information Systems - The 13th international conference on advanced information systems engineering (CAiSE*01)
Design Templates for Collective Behavior
ECOOP '00 Proceedings of the 14th European Conference on Object-Oriented Programming
Coordination Technologies for Managing Information System Evolution
CAiSE '01 Proceedings of the 13th International Conference on Advanced Information Systems Engineering
A Structural Embedding of Ocsid in PVS
TPHOLs '01 Proceedings of the 14th International Conference on Theorem Proving in Higher Order Logics
Localizability of Fairness Constraints and Their Distributed Implementations
CONCUR '99 Proceedings of the 10th International Conference on Concurrency Theory
Hybrid Models for Mobile Computing
COORDINATION '00 Proceedings of the 4th International Conference on Coordination Languages and Models
Communication and Synchronisation Using Interaction Objects
FM '99 Proceedings of the Wold Congress on Formal Methods in the Development of Computing Systems-Volume II
An Operational Component Specification Method
APSEC '99 Proceedings of the Sixth Asia Pacific Software Engineering Conference
A Mathematical Toolbox for the Software Architec
IWSSD '96 Proceedings of the 8th International Workshop on Software Specification and Design
Real-time specification and modeling with joint actions
IWSSD '91 Proceedings of the 6th international workshop on Software specification and design
Action systems in incremental and aspect-oriented modeling
Distributed Computing - Papers in celebration of the 20th anniversary of PODC
Aspects of Formal and Graphical Design of a Bus System
Proceedings of the conference on Design, automation and test in Europe - Volume 1
Modular Design of Reactive Systems
COMPSAC '04 Proceedings of the 28th Annual International Computer Software and Applications Conference - Volume 01
Operational specification with joint actions: serializable databases
Distributed Computing - Special issue: Specification of concurrent systems
A rigorous environment for development of concurrent systems
Nordic Journal of Computing
Some impossibility results in interprocess synchronization
Distributed Computing
Fairness and hyperfairness in multi-party interactions
Distributed Computing
Invariants come from templates
Proceedings of the 10th international workshop on Formal methods for industrial critical systems
Adding mobility to software architectures
Science of Computer Programming - Special issue on second international workshop on foundations of coordination languages and software architectures (FOCLASA'03)
A Foundation for Refining Concurrent Objects
Fundamenta Informaticae
Generating non-conspiratorial executions
Information Processing Letters
Modeling Communication with Synchronized Environments
Fundamenta Informaticae - Application of Concurrency to System Design (ACSD'06)
Conformance Testing of Hybrid Systems with Qualitative Reasoning Models
Electronic Notes in Theoretical Computer Science (ENTCS)
A stepwise development process for reasoning about the reliability of real-time systems
IFM'07 Proceedings of the 6th international conference on Integrated formal methods
Automatic generation of compatible interfaces from partitioned UML activities
SDL'09 Proceedings of the 14th international SDL conference on Design for motes and mobiles
Synchronized architectures for adaptive systems
COMPSAC-W'05 Proceedings of the 29th annual international conference on Computer software and applications conference
Applying Event-B atomicity decomposition to a multi media protocol
FMCO'09 Proceedings of the 8th international conference on Formal methods for components and objects
Applying atomicity and model decomposition to a space craft system in event-B
NFM'11 Proceedings of the Third international conference on NASA Formal methods
Fault-based generation of test cases from UML-Models: approach and some experiences
SAFECOMP'11 Proceedings of the 30th international conference on Computer safety, reliability, and security
From requirements to development: methodology and example
ICFEM'11 Proceedings of the 13th international conference on Formal methods and software engineering
Reasoning algebraically about probabilistic loops
ICFEM'06 Proceedings of the 8th international conference on Formal Methods and Software Engineering
Continuous action system refinement
MPC'06 Proceedings of the 8th international conference on Mathematics of Program Construction
Designing a multiway synchronization protocol
Computer Communications
Formalizing hybrid systems with event-b
ABZ'12 Proceedings of the Third international conference on Abstract State Machines, Alloy, B, VDM, and Z
Modeling Communication with Synchronized Environments
Fundamenta Informaticae - Application of Concurrency to System Design (ACSD'06)
A Foundation for Refining Concurrent Objects
Fundamenta Informaticae
Deadlock-freedom in component systems with architectural constraints
Formal Methods in System Design
A systematic approach to atomicity decomposition in event-b
SEFM'12 Proceedings of the 10th international conference on Software Engineering and Formal Methods
Social devices: collaborative co-located interactions in a mobile cloud
Proceedings of the 11th International Conference on Mobile and Ubiquitous Multimedia
Complementary methodologies for developing hybrid systems with event-b
ICFEM'12 Proceedings of the 14th international conference on Formal Engineering Methods: formal methods and software engineering
Set-theoretic models of computations
Theories of Programming and Formal Methods
Hi-index | 0.00 |
Action systems provide a method to program distributed systems that emphasizes the overall behavior of the system. System behavior is described in terms of the possible interactions (actions) that the processes can engage in, rather than in terms of the sequential code that the processes execute. The actions provide a symmetric communication mechanism that permits an arbitrary number of processes to be synchronized by a common handshake. This is a generalization of the usual approach, employed in languages like CSP and Ada, in which communication is asymmetric and restricted to involve only two processes. Two different execution models are given for action systems: a sequential one and a concurrent one. The sequential model is easier to use for reasoning, and is essentially equivalent to the guarded iteration statement by Dijkstra. It is well suited for reasoning about system properties in temporal logic, but requires a stronger fairness notion than it is reasonable to assume a distributed implementation will support. The concurrent execution model reflects the true concurrency that is present in a distributed execution, and corresponds to the way in which the system is actually implemented. An efficient distributed implementation of action systems on a local area network is described. The fairness assumptions of the concurrent model can be guaranteed in this implementation. The relationship between the two execution models is studied in detail in the paper. For systems that will be called fairly serializable, the two models are shown to be equivalent. Proof methods are given for verifying this property of action systems. It is shown that for fairly serializable systems, properties that hold for any concurrent execution of the system can be established by temporal proofs that are conducted entirely within the simpler sequential execution model.