Action systems, unbounded nondeterminism, and infinite traces

  title={Action systems, unbounded nondeterminism, and infinite traces},
  author={Michael J. Butler and Carroll Morgan},
  journal={Formal Aspects of Computing},
Morgan [Mor90a] has described a correspondence between Back's action systems [BKS83] and the conventionalfailures-divergences model of Hoare'scommunicating sequential processes (CSP) formalism [Hoa85]. However, the CSP failures-divergences model does not treat unbounded nondeterminism, although unbounded nondeterminism arises quite naturally in action systems; to that extent, the correspondence between the two approaches is inadequate.Fortunately there is an extendedinfinite traces model of CSP… 

Event refinement in state-based concurrent systems

A simplified expression for hiding sets of actions is derived and sufficient conditions for forwards simulation in which the concrete system uses hiding and renaming are presented, to reduce the complexity of proofs of refinement.

Quantitative Refinement and Model Checking for the Analysis of Probabilistic Systems

This work formalises probabilistic refinement of action systems in order to provide just such a front end, and illustrates with the probabilism model checker PRISM how it can be used to reduce state explosion.

Stepwise development of fair distributed systems

A theory of fairness which supports the specification and development of a wide variety of “fair” systems is developed, allowing the uniform treatment of many different kinds of fairness within the same formalism, such as probabilistic behaviour, for example.

Of Probabilistic Wp and SP-and Compositionality

  • Carroll Morgan
  • Computer Science
    25 Years Communicating Sequential Processes
  • 2004
The link, which earlier yielded the classic CSP healthiness conditions, is induced to produce probabilistic versions of them for free, and the issue of compositionality-for the moment-remains as delicate as ever.

A mechanically proved development combining B abstract systems and Spin

  • J. Attiogbé
  • Computer Science
    Fourth International Conference onQuality Software, 2004. QSIC 2004. Proceedings.
  • 2004
It is shown through this study that for some B systems, the Spin tool is well adapted for complementary analysis, and this entire development is mechanically proved with respect to safety properties using B tool and withrespect to liveness properties using the spin tool.

UML in action: a two-layered interpretation for testing

A novel model-based test case generation approach that automatically derives test cases from UML state machines using Tretman's input-output conformance relation (ioco) as the basis of the fault models.

E 1 : Economical and practical design and analysis of probabilistic distributed systems

  • Computer Science
Economical and practical design and analysis of probabilistic distributed systems E2: Aims and Background Modern complex computer systems are often concurrent and distributed, comprising many

The Challenge of Probabilistic Event B - Extended Abstract

The aim is to use (event) B to guide us towards the issues that truly are important, and to use Rabin's randomized mutual-exclusion algorithm is used as a motivating case study.

Mapping UML to Labeled Transition Systems for Test-Case Generation - A Translation via Object-Oriented Action Systems

This paper extends on the formalism of object-oriented action systems (OOAS) and describes a mapping of a selected UML-subset to OOAS by choosing one of the several possible semantics of UML.

Tool-Assisted Multi-Facet Analysis of Formal Specifications (Using Alelier-B and ProB)

  • J. Attiogbé
  • Computer Science
    IASTED Conf. on Software Engineering
  • 2006
This article conducts aiment on analysing a formal specification from multiple aspects and uses the B method and the Atelier-B tool to supplement the study with model checking.



A CSP approach to action systems

The original motivation for the work described in this thesis was the use of the action system formalism in the development of telecommunications systems, where interaction is often based on synchronised value-passing.

Unbounded Nondeterminism in CSP

A denotational semantics for a version of CSP including general nondeterministic choice and infinite hiding is given, via a congruence theorem with operational semantics and a careful analysis of operators' behaviour on a subset of the model.

Refinement of State-Based Concurrent Systems

The traces, failures, and divergences of CSP can be expressed as weakest precondition formulae over action systems. We show how such systems may be refined up to failures-divergences, by giving two

A Method for Refining Atomicity in Parallel Algorithms

A method for refining the atomicity of actions in a parallel program is described, which allows derivation of parallel programs by stepwise refinement, starting from an initial highl level and sequential program and ending in aallel program for shared memory or message passing architectures.

A state-based approach to communicating processes

Communicating processes, which may exhibit nondeterministic behaviour, are specified as state-transition systems. Equivalence and refinement relations are defined in terms of the failures model of

Decentralization of process nets with centralized control

A method for transforming centralized action systems into decentralized ones is described and the correctness of this method is proved, and its use is illustrated by deriving a process net that distributedly sorts successive lists of integers.

Of wp and CSP

A state-based and an event-based approach to concurrency are linked: the traces, failures and divergences of CSP are expressed as weakest precondition formulae over Action Systems. The result is

Refinement Calculus, Part II: Parallel and Reactive Programs

  • R. Back
  • Computer Science, Chemistry
    REX Workshop
  • 1989
It is shown how to apply the refinement calculus to stepwise refinement of both parallel programs and reactive programs. The approach is based on using the action systems model to describe parallel

The specification statement

Dijkstra's programming language is extended by specification statements, which specify parts of a program “yet to be developed,” and a weakest precondition semantics is given so that the extended language has a meaning as precise as the original.