Journal of the ACM (JACM)
Contracts: specifying behavioral compositions in object-oriented systems
OOPSLA/ECOOP '90 Proceedings of the European conference on object-oriented programming on Object-oriented programming systems, languages, and applications
ACM Transactions on Programming Languages and Systems (TOPLAS)
ACM Transactions on Programming Languages and Systems (TOPLAS)
Interacting processes: a multiparty approach to coordinated distributed programming
Interacting processes: a multiparty approach to coordinated distributed programming
Accommodating interference in the formal design of concurrent object-based programs
Formal Methods in System Design
The B-book: assigning programs to meanings
The B-book: assigning programs to meanings
Program Development by Refinement: Case Studies Using the B Method
Program Development by Refinement: Case Studies Using the B Method
Data Refinement and Remote Procedures
TACS '97 Proceedings of the Third International Symposium on Theoretical Aspects of Computer Software
Application of the Composition Principle to Unity-like Specifications
TAPSOFT '93 Proceedings of the International Joint Conference CAAP/FASE on Theory and Practice of Software Development
Trace Refinement of Action Systems
CONCUR '94 Proceedings of the Concurrency Theory
On Unifying Assumption-Commitment Style Proof Rules for Concurrency
CONCUR '94 Proceedings of the Concurrency Theory
Refinement and Composition of Transition-based Rely-Guarantee Specification with Auxiliary Variables
Proceedings of the Tenth Conference on Foundations of Software Technology and Theoretical Computer Science
Proceedings of the Z User Workshop
Composition and Refinement in the B-Method
B '98 Proceedings of the Second International B Conference on Recent Advances in the Development and Use of the B Method
Modularizing the Formal Description of a Database System
VDM '90 Proceedings of the Third International Symposium of VDM Europe on VDM and Z - Formal Methods in Software Development
Proofs of Networks of Processes
IEEE Transactions on Software Engineering
Relaxing restrictions on invariant composition in the B method by ownership control a la SPEC#
Rigorous Methods for Software Construction and Analysis
B'07 Proceedings of the 7th international conference on Formal Specification and Development in B
Relaxing b sharing restrictions within CSP||B
SC'12 Proceedings of the 11th international conference on Software Composition
Hi-index | 0.00 |
Sharing between B constructs is limited, both on the specification and the implementation level. The limitations stem from the single writer/multiple readers paradigm, restricted visibility of shared variables, and structural constraints to prevent interference. As a consequence, applications with inherent sharing requirements have to either be described as large monolithic constructs or be underspecified, leading to a loss of modularity respectively certain desirable properties being unprovable. We propose a new compositional symmetric shared access mechanism based on roles describing rely/guarantee conditions. The mechanism provides for multiple writers on shared constructs, visibility of shared variables in the accessors' invariants, and controlled aliasing. Use is uniform in machines, refinements, and implementations. Sharing is compositional: all proof obligations are local and do not require knowledge of the other accessors' specifications, let alone their or the shared construct's implementation. Soundness of the mechanism is established by flattening.