Michael J. Butler

dblp:b/MichaelJButler · DBLP profile ↗
← Back
84ranked-venue papers
20as first author
13since 2021 · last 2026
0000-0003-4642-5373ORCID · verified

Domains — the database's venue-derived domains; a paper can count in several

Software engineering, systems software and programming languages · 60 · 11 first-author · 11 since 2021Theory of computation · 34 · 11 first-author · 8 since 2021Systems, architecture and hardware · 2 · 1 since 2021Applied, interdisciplinary, general and emerging computing · 2 · 2 since 2021
YearPublicationVenuePosition
2026 SHARCS: Refinement-Centric Hazard Analysis of Requirements for Critical Systems
Asieh Salehi Fathabadi, Thai Son Hoang, Michael J. Butler
ABZ3
2025 Developing Safe Exception Recovery Mechanisms for CHERI Capability Hardware Using UML-B Formal Analysis
Colin F. Snook, Asieh Salehi Fathabadi, Thai Son Hoang, Robert Thorburn, Michael J. Butler, Leonardo Aniello, Vladimiro Sassone
ABZ5
2024 Event-B Development of Modelling Human Intervention Request in Self-driving Vehicle Systems
Fahad Alotaibi, Thai Son Hoang, Asieh Salehi Fathabadi, Michael J. Butler
ABZ4
2024 Designing Exception Handling Using Event-B
Asieh Salehi Fathabadi, Colin F. Snook, Thai Son Hoang, Robert Thorburn, Michael J. Butler, Leonardo Aniello, Vladimiro Sassone
ABZ5
2024 Semantics Formalisation - From Event-B Contexts to Theories
Thai Son Hoang, Laurent Voisin, Karla Vanessa Morris Wright, Colin F. Snook, Michael J. Butler
ABZ5
2024 An Event-B Formal Model for Access Control and Resource Management of Serverless Apps
Mehmet Said Nur Yagmahan, Abdolbaghi Rezazadeh, Michael J. Butler
ABZ3
2023 A Rigorous Iterative Analysis Approach for Capturing the Safety Requirements of Self-Driving Vehicle Systems
abstract
This paper presents a methodology called Rigorous Analysis Template Process (RATP) for analysing the behaviours and interactions of multiple components in a Self-Driving Vehicle (SDV) to ensure its system safety, especially when a human driver is involved as a fallback option for handling hazardous events. RATP uses Systems-Theoretic Processes Analysis (STPA) and Event-B formal method to gradually identify safety requirements and build their rigours models. The output of RATP is a set of safety requirements that guide the development of a rigorous model to maintain the system safety against identified hazardous states at different levels of abstraction. The main advantage of RATP is to allow the behaviours of a system to be analysed from a high-abstraction layer to a more detailed concrete layer.
Fahad Alotaibi, Thai Son Hoang, Michael J. Butler
COMPSAC3
2023 Formal Language Semantics for Triggered Enable Statecharts with a Run-to-Completion Scheduling
Karla Vanessa Morris Wright, Thai Son Hoang, Colin F. Snook, Michael J. Butler
ICTAC4
2023 Designing Critical Systems Using Hierarchical STPA and Event-B
Asieh Salehi Fathabadi, Colin F. Snook, Dana Dghaym, Thai Son Hoang, Fahad Alotaibi, Michael J. Butler
ABZ6
2023 A fairness-based refinement strategy to transform liveness properties in Event-B models
Chenyang Zhu 0001, Michael J. Butler, Corina Cîrstea, Thai Son Hoang
Sci. Comput. Program.2
2022 High-Level Rigorous Template for Analysing Safety Properties of Self-driving Vehicle Systems
abstract
A self-driving vehicle (SDV) brings a novel idea to the automotive industry as it aims to replace the human driver; however, the human driver is still involved in the loop of an SDV's life cycle. Although the human driver plays a major role in ensuring the high-level safety property of the system, incorrect interactions between a human driver and an SDV might lead to a serious accident. Our paper aims to develop a rigorous analysis template that emphasises the system component interactions between an SDV and a human driver, especially if the SDV assumes the human driver to be a fallback option for dealing with hazardous events. Our approach combine Systems-Theoretic Processes Analysis (STPA) in order to identify the high-level safety requirements, and the Event-B formal method to provide the assurance about the consistency of the safety requirements obtained from STPA.
Fahad Alotaibi, Thai Son Hoang, Michael J. Butler
COMPSAC3
2021 Reasoning About Real-Time Systems in Event-B Models with Fairness Assumptions
abstract
Stepwise development supported by the Event-B formalism has been used in the domain of system design and verification. This refinement approach guarantees that safety properties are preserved, while additional reasoning is required to prove the preservation of liveness properties. Our previous work proposes to use real-time trigger-response properties to reason about liveness properties and timed properties in real-time systems. Conditions such as weak fairness assumptions, relative deadlock freedom, and conditional convergence are explored to eliminate Zeno behavior when modeling real-time systems. In this reasoning framework, some strong constraints do not apply to real-world cases. This paper extends our previous results by using strong fairness assumptions to relax these constraints. We present the proof obligations together with temporal properties to construct the theorems and proofs. Fairness assumptions are used to enforce real-time properties in Event-B models. The carrier-sense multiple access with collision detection protocol is used as a case study to illustrate the approach.
Chenyang Zhu 0001, Michael J. Butler, Corina Cîrstea, Thai Son Hoang
TASE2
2021 Domain-specific scenarios for refinement-based methods
Colin F. Snook, Thai Son Hoang, Dana Dghaym, Asieh Salehi Fathabadi, Michael J. Butler
J. Syst. Archit.5
2020 The First Twenty-Five Years of Industrial Use of the B-Method
Michael J. Butler, Philipp Koerner, Sebastian Krings, Thierry Lecomte, Michael Leuschel, Luis-Fernando Mejia, Laurent Voisin
FMICS1
2020 Real-Time Trigger-Response Properties for Event-B Applied to the Pacemaker
abstract
As the physical world evolves with time, safety-critical systems are usually used with time-dependent functionality. The design and implementation of real-time systems are challenging due to the complicated functional and timing requirements. Event - B formalization offers a stepwise development approach for specifying and verifying systems with mathematical techniques and tools. In this paper, we propose four realtime specification patterns, namely time response pattern, abort pattern, intermediate pattern and periodic pattern, to facilitate the specification of real-time properties in Event-B models. The proposed patterns are used in a dual-chamber pacemaker case study to specify and verify the timing cycles based on the requirements. The model is proved using the Rodin tool.
Chenyang Zhu 0001, Michael J. Butler, Corina Cîrstea
TASE2
2020 Trace semantics and refinement patterns for real-time properties in event-B models
Chenyang Zhu 0001, Michael J. Butler, Corina Cîrstea
Sci. Comput. Program.2
2020 Abstract State Machines, Alloy, B, TLA, VDM and Z (ABZ 2018)
Michael J. Butler, Alexander Raschke
Sci. Comput. Program.1
2020 Formalizing hierarchical scheduling for refinement of real-time systems
Chenyang Zhu 0001, Michael J. Butler, Corina Cîrstea
Sci. Comput. Program.2
2020 Introduction to special section on the ABZ 2018 case study: Hybrid ERTMS/ETCS Level 3
Michael J. Butler, Thai Son Hoang, Alexander Raschke, Klaus Reichl
Int. J. Softw. Tools Technol. Transf.1
2019 Behaviour-Driven Formal Model Development of the ETCS Hybrid Level 3
abstract
Behaviour driven formal model development (BDFMD) enables domain engineers to influence and validate mathematically precise and verified specifications. In previous work we proposed a process where manually authored scenarios are used initially to support the requirements and help the modeller. The same scenarios are used to verify behavioural properties of the model. The model is then mutated to automatically generate scenarios that have a more complete coverage than the manual ones. These automatically generated scenarios are used to animate the model in a final acceptance stage. In this paper, we discuss lessons learned from applying this BDFMD process to a real-life specification: The European Train Control Systems (ETCS) Hybrid Level 3. During the case study, we have developed our understanding of the process, modifying the way we do some stages and developing improved tool support to make the process more efficient. We discuss (1) the need for abstract scenarios during incremental model development and verification, (2) tools and techniques developed to make the running of scenarios more efficient, and (3) improvements to tools that generate new test cases to improve coverage.
Michael J. Butler, Dana Dghaym, Thai Son Hoang, Tope Omitola, Colin F. Snook, Andreas Fellner, Rupert Schlick, Thorsten Tarrach, Tomas Fischer, Peter Tummeltshammer
ICECCS1
2019 Towards Refinement Semantics of Real-Time Trigger-Response Properties in Event-B
abstract
Abstraction and refinement offer a stepwise development approach to managing complexity in system design. Based on our previous work that extends Event-B models with high level real-time trigger-response properties, this paper presents refinement semantics of timed systems using behavioral traces. Forward simulation, which is a proof technique for refinement, is used to verify the consistency between different refinement levels. To prove refinement of trace semantics, we construct intermediate traces from concrete traces with a mapping function and prove the intermediate trace without stuttering events and states are abstract traces. Fairness assumptions, relative deadlock freedom, and conditional convergence are adopted in refinement steps to eliminate Zeno behavior in timed models. Based on the semantics, we develop refinement rules and strategies to perform refinement on timed models and refine real-time trigger-response properties into sequential or alternative sub-timing properties with proofs.
Chenyang Zhu 0001, Michael J. Butler, Corina Cîrstea
TASE2
2018 Reusing Formal Models via Lifting
abstract
Formal modelling methods rightly focus on the primary goal of verifying properties. This can however, lead to inadequate facilities for structuring the model into manageable verification components. For example, the Event-B language is designed to achieve a high level of automatic theorem proofs through a linear sequence of refinements. In previous work, we introduced a mechanism to structure models via an inclusion mechanism using event synchronisations but this did not deal with generalised instantiations of a model component. Here we introduce a lifting mechanism that can be used in conjunction with inclusion to introduce multiple instances of a separately verified model lifted to an arbitrary set of instances. This allows localised properties to be proven without the complications caused by multiple instances as well as enhancing the usability of the inclusion feature.
Dana Dghaym, Colin F. Snook, Thai Son Hoang, Michael J. Butler
ICECCS4
2018 Behaviour-Driven Formal Model Development
Colin F. Snook, Thai Son Hoang, Dana Dghaym, Michael J. Butler, Tomas Fischer, Rupert Schlick, Keming Wang
ICFEM4
2018 Developing A New Language to Construct Algebraic Hierarchies for Event-B
James Snook, Michael J. Butler, Thai Son Hoang
SETTA2
2018 Semantics of Real-Time Trigger-Response Properties in Event-B
abstract
Event-B is a formal method for system-level modelling and analysis, which uses logic and set theory to describe discrete labelled transition systems. Timed transition systems have been introduced to incorporate timing constraints on transitions to describe real-time behaviours of the system. This paper proposes an approach to modelling high level timing constraints between different transitions with a timed trigger-response property. We present trace semantics for the trigger-response property and timed trigger-response property. This semantics provides a precise definition of valid trigger-response behaviours in Event-B machines. Based on the semantics, we develop proof obligations on Event-B machines under which all the traces of a machine satisfy the trigger-response property and the timed trigger-response property.
Chenyang Zhu 0001, Michael J. Butler, Corina Cîrstea
TASE2
2018 A model-based framework for software portability and verification in embedded power management systems
Asieh Salehi Fathabadi, Michael J. Butler, Sheng Yang 0003, Luis Alfonso Maeda-Nunez, James R. B. Bantock, Bashir M. Al-Hashimi, Geoff V. Merrett
J. Syst. Archit.2
2018 Introduction to the ABZ 2016 Special issue
Michael J. Butler, Klaus-Dieter Schewe
Sci. Comput. Program.1
2018 Validating and verifying the requirements and design of a haemodialysis machine using the Rodin toolset
Thai Son Hoang, Colin F. Snook, Asieh Salehi Fathabadi, Michael J. Butler, Lukas Ladenberger
Sci. Comput. Program.4
2017 Extending ERS for Modelling Dynamic Workflows in Event-B
abstract
Event-B is a state-based formal method for modelling and verifying the consistency of discrete systems. Event refinement structures (ERS) augment Event-B with hierarchical diagrams, providing explicit support for workflows and refinement relationships. Despite the variety of ERS combinators, ERS still lacks the flexibility to model dynamic workflows that support dynamic changes in the degree of concurrency. Specifically in the cases where the degree of parallelism is data dependent and data values can change during execution. In this paper, we propose two types of extensions in ERS to support dynamic modelling using Event-B. The first extension is supporting data-dependent workflows where data changes are possible. The second extension improves ERS by providing exception handling support. Semantics are given to an ERS diagram by generating an Event-B model from it. We demonstrate the Event-B encodings of the proposed ERS extensions by modelling a concurrent emergency dispatch case study.
Dana Dghaym, Michael J. Butler, Asieh Salehi Fathabadi
ICECCS2
2017 A Composition Mechanism for Refinement-Based Methods
abstract
Event-B developments are mostly structured around the refinement relationship. This top-down development architecture enables system details to be gradually introduced into the formal model. However, this results in large models with monolithic structures. We develop a composition mechanism allowing to develop models bottom-up. In particular, our proposed mechanism works seamlessly with the existing refinement technique in Event-B. As a result we have built a formal development method that can take advantage of both top-down and bottom-up approaches. We prove the correctness of machine inclusion with refinement using the supporting Rodin platform.
Thai Son Hoang, Dana Dghaym, Colin F. Snook, Michael J. Butler
ICECCS4
2017 Class-Diagrams for Abstract Data Types
Thai Son Hoang, Colin F. Snook, Dana Dghaym, Michael J. Butler
ICTAC4
2017 Formal Development of Policing Functions for Intelligent Systems
abstract
We present an approach for ensuring safety properties of autonomous systems. Our contribution is a system architecture where a policing function validating system safety properties at runtime is separated from the system's intelligent planning function. The policing function is developed formally by a correct-by-construction method. The separation of concerns enables the possibility of replacing and adapting the intelligent planning function without changing the validation approach. We validate our approach on the example of a multi-UAV system managing route generation. Our prototype runtime validator has been integrated and evaluated with an industrial UAV synthetic environment.
Chris Bogdiukiewicz, Michael J. Butler, Thai Son Hoang, Martin Paxton, James Snook, Xanthippe Waldron, Toby Wilkinson
ISSRE2
2017 Core Hybrid Event-B II: Multiple cooperating Hybrid Event-B machines
Richard Banach, Michael J. Butler, Shengchao Qin, Huibiao Zhu
Sci. Comput. Program.2
2017 Derivation of algorithmic control structures in Event-B refinement
Mohammadsadegh Dalvandi, Michael J. Butler, Abdolbaghi Rezazadeh
Sci. Comput. Program.2
2016 Modelling Hybrid Systems in Event-B and Hybrid Event-B: A Comparison of Water Tanks
Richard Banach, Michael J. Butler
ICFEM2
2016 Editorial
abstract
No abstract available.
Michael J. Butler
Formal Aspects Comput.1
2015 Editorial
abstract
No abstract available.
Michael J. Butler, Einar Broch Johnsen, Luigia Petre
Formal Aspects Comput.1
2015 Editorial
abstract
No abstract available.
George Eleftherakis, Michael J. Butler, Michael G. Hinchey
Formal Aspects Comput.2
2015 Language and tool support for event refinement structures in Event-B
abstract
Abstract Event-B is a formal method for modelling and verifying the consistency of chains of model refinements. The event refinement structure (ERS) approach augments Event-B with a graphical notation which is capable of explicit representation of control flows and refinement relationships. In previous work, the ERS approach has been evaluated manually in the development of two large case studies, a multimedia protocol and a spacecraft sub-system. The evaluation results helped us to extend the ERS constructors, to develop a systematic definition of ERS, and to develop a tool supporting ERS. We propose the ERS language which systematically defines the semantics of the ERS graphical notation including the constructors. The ERS tool supports automatic construction of the Event-B models in terms of control flows and refinement relationships. In this paper we outline the systematic definition of ERS including the presentation of constructors, the tool that supports it and evaluate the contribution that ERS and its tool make. Also we present how the systematic definition of ERS and the corresponding tool can ensure a consistent encoding of the ERS diagrams in the Event-B models.
Asieh Salehi Fathabadi, Michael J. Butler, Abdolbaghi Rezazadeh
Formal Aspects Comput.2
2015 Building traceable Event-B models from requirements
Eman H. Alkhammash, Michael J. Butler, Asieh Salehi Fathabadi, Corina Cîrstea
Sci. Comput. Program.2
2015 Core Hybrid Event-B I: Single Hybrid Event-B machines
Richard Banach, Michael J. Butler, Shengchao Qin, Nitika Verma, Huibiao Zhu
Sci. Comput. Program.2
2015 A method of refinement in UML-B
Mar Yah Said, Michael J. Butler, Colin F. Snook
Softw. Syst. Model.2
2014 Applying an Integrated Modelling Process to Run-time Management of Many-Core Systems
Asieh Salehi Fathabadi, Colin F. Snook, Michael J. Butler
IFM3
2013 Cruise Control in Hybrid Event-B
Richard Banach, Michael J. Butler
ICTAC2
2013 Systematic Development of Control Designs via Formal Refinement
abstract
The Simulink/Stateflow (SL/SF) modeling framework is widely used in industry for the development of control applications. However, such models are not amenable to formal reasoning. Controllers can also be designed using formal specification languages. Such designs can be formally verified, but the models do not explicitly represent control or data flow information. In this paper, we discuss RRM diagrams (RRMDs), a new modelling notation which incorporates the benefits of these two formalisms. RRMDs are graphical formal models and they also support incremental formal development. We have used synchronising state machines to encode RRMDs. We have also developed a prototype tool which translates RRMDs automatically to SL/SF designs.
Manoranjan Satpathy, Colin F. Snook, Silky Arora, S. Ramesh 0002, Michael J. Butler
MODELSWARD5
2013 Editorial
abstract
No abstract available.
Jonathan P. Bowen, Michael J. Butler, Steve Reeves, Michael G. Hinchey
Formal Aspects Comput.2
2013 Reasoned modelling critics: Turning failed proofs into modelling guidance
Andrew Ireland, Gudmund Grov, Maria Teresa Llano, Michael J. Butler
Sci. Comput. Program.4
2012 Control Systems: Phenomena and Structuring Functional Requirement Documents
Sanaz Yeganefard, Michael J. Butler
ICECCS2
2012 A Practical Approach for Closed Systems Formal Verification Using Event-B
Brett Bicknell, Michael J. Butler, John Colley, Colin F. Snook
SEFM3
2012 A Systematic Approach to Atomicity Decomposition in Event-B
Asieh Salehi Fathabadi, Michael J. Butler, Abdolbaghi Rezazadeh
SEFM2
2012 External and internal choice with event groups in Event-B
abstract
Abstract Abrial’s Event-B formalism for refinement-based system development is influenced by Back’s action system approach. Morgan has defined a CSP-like failures-divergence semantics for action systems that distinguishes internal and external choice of actions. Morgan’s semantics has the characteristic that the choice between enabled actions is external while internal choice is represented less directly through nondeterministic effect of actions. Practical experience with Event-B has demonstrated the need to be able to represent both internal and external choice between enabled events more explicitly. In this paper, Morgan’s failures semantics for action systems is modified to allow both internal and external choice to be represented directly. This is achieved by grouping events so that external choice is between event groups and internal choice is within event groups. This leads to a refinement rule for preservation of choice between event groups while allowing for reduction of choice within event groups. We also provide a refinement rule for splitting event groups in order to increase external choice. The refinement rules are justified in terms of failures refinement.
Michael J. Butler
Formal Aspects Comput.1
2011 Decomposition tool for event-B
abstract
Abstract Two methods have been identified for Event‐B model decomposition: shared variable and shared event. The purpose of this paper is to introduce the two approaches and the respective tool support in the Rodin platform. Besides alleviating the complexity for large systems and respective proofs, decomposition allows team development in parallel over the same Event‐B project which is very attractive in the industrial environment. Copyright © 2011 John Wiley & Sons, Ltd.
Renato Silva, Carine Pascal, Thai Son Hoang, Michael J. Butler
Softw. Pract. Exp.4
2010 Editorial
abstract
No abstract available.
Eerke A. Boiten, Michael J. Butler, John Derrick, Graeme Smith 0001
Formal Aspects Comput.2
2010 Rodin: an open toolset for modelling and reasoning in Event-B
Jean-Raymond Abrial, Michael J. Butler, Stefan Hallerstede, Thai Son Hoang, Farhad Mehta, Laurent Voisin
Int. J. Softw. Tools Technol. Transf.2
2009 Language and Tool Support for Class and State Machine Refinement in UML-B
Mar Yah Said, Michael J. Butler, Colin F. Snook
FM2
2009 Supporting Reuse of Event-B Developments through Generic Instantiation
Renato Silva, Michael J. Butler
ICFEM2
2009 Decomposition Structures for Event-B
Michael J. Butler
IFM1
2008 Modelling and Proof of a Tree-Structured File System in Event-B and Rodin
Kriangsak Damchoom, Michael J. Butler, Jean-Raymond Abrial
ICFEM2
2008 An incremental development of the Mondex system in Event-B
abstract
Abstract A development of the Mondex system was undertaken using Event-B and its associated proof tools. An incremental approach was used whereby the refinement between the abstract specification of the system and its detailed design was verified through a series of refinements. The consequence of this incremental approach was that we achieved a very high degree of automatic proof. The essential features of our development are outlined. We also present some modelling and proof guidelines that we found helped us gain a deep understanding of the system and achieve the high degree of automatic proof.
Michael J. Butler, Divakar Yadav
Formal Aspects Comput.1
2008 ProB: an automated analysis toolset for the B method
Michael Leuschel, Michael J. Butler
Int. J. Softw. Tools Technol. Transf.2
2007 Automatic Testing from Formal Specifications
Manoranjan Satpathy, Michael J. Butler, Michael Leuschel, S. Ramesh 0002
TAP2
2007 Symmetry Reduced Model Checking for B
abstract
Symmetry reduction is a technique that can help alleviate the problem of state space explosion in model checking. The idea is to verify only a subset of states from each class (orbit) of symmetric states. This paper presents a framework for symmetry reduced model checking of B machines, which verifies a unique representative from each orbit. Symmetries are induced by the deferred set; a key component of the B language. This contrasts with strategies that require the introduction of a special data type into a language, to indicate symmetry. An extended version of the graph isomorphism program, nauty, is used to detect symmetries, and the symmetry reduction package has been integrated into the PROB model checker. Relevant algorithms are presented, and experimental results illustrate the effectiveness of the method, where exponential speedups are sometimes possible.
Edd Turner, Michael Leuschel, Corinna Spermann, Michael J. Butler
TASE4
2006 A Proposal for Records in Event-B
Neil Evans, Michael J. Butler
FM2
2006 Roadmap for enhanced languages and methods to aid verification
abstract
This roadmap describes ways that researchers in four areas---specification languages, program generation, correctness by construction, and programming languages---might help further the goal of verified software. It also describes what advances the "verified software" grand challenge might anticipate or demand from work in these areas. That is, the roadmap is intended to help foster collaboration between the grand challenge and these research areas.A common goal for research in these areas is to establish language designs and tool architectures that would allow multiple annotations and tools to be used on a single program. In the long term, researchers could try to unify these annotations and integrate such tools.
Gary T. Leavens, Jean-Raymond Abrial, Don S. Batory, Michael J. Butler, Alessandro Coglio, Kathi Fisler, Eric C. R. Hehner, Cliff B. Jones, Dale Miller 0001, Simon L. Peyton Jones, Murali Sitaraman, Douglas R. Smith, Aaron Stump
GPCE4
2006 An Open Extensible Tool Environment for Event-B
Jean-Raymond Abrial, Michael J. Butler, Stefan Hallerstede, Laurent Voisin
ICFEM2
2006 Guest Editorial Editorial for the FAC Special Issue based on derivative papers from "Refine '05"
abstract
No abstract available.
Eerke A. Boiten, Michael J. Butler
Formal Aspects Comput.2
2006 UML-B: Formal modeling and design aided by UML
abstract
The emergence of the UML as a de facto standard for object-oriented modeling has been mirrored by the success of the B method as a practically useful formal modeling technique. The two notations have much to offer each other. The UML provides an accessible visualization of models facilitating communication of ideas but lacks formal precise semantics. B, on the other hand, has the precision to support animation and rigorous verification but requires significant effort in training to overcome the mathematical barrier that many practitioners perceive. We utilize a derivation of the B notation as an action and constraint language for the UML and define the semantics of UML entities via a translation into B. Through the UML-B profile we provide specializations of UML entities to support model refinement. The result is a formally precise variant of UML that can be used for refinement based, object-oriented behavioral modeling. The design of UML-B has been guided by industrial applications.
Colin F. Snook, Michael J. Butler
ACM Trans. Softw. Eng. Methodol.2
2005 Comparing Two Approaches to Compensable Flow Composition
Roberto Bruni 0001, Michael J. Butler, Carla Ferreira 0001, Tony Hoare, Hernán C. Melgratti, Ugo Montanari
CONCUR2
2005 Combining CSP and B for Specification and Property Verification
Michael J. Butler, Michael Leuschel
FM1
2005 Automatic Refinement Checking for B
Michael Leuschel, Michael J. Butler
ICFEM2
2004 An Operational Semantics for StAC, a Language for Modelling Long-Running Business Transactions
Michael J. Butler, Carla Ferreira 0001
COORDINATION1
2004 Performance analysis of probabilistic action systems
abstract
Abstract. Formal notations like B or action systems support a notion of refinement. Refinement relates an abstract specification A to a concrete specification C that is as least as deterministic. Knowing A and C one proves that C refines, or implements, specification A . In this study we consider specification A as given and concern ourselves with a way to find a good candidate for implementation C . To this end we classify all implementations of an abstract specification according to their performance. We distinguish performance from correctness. Concrete systems that do not meet the abstract specification correctly are excluded. Only the remaining correct implementations C are considered with respect to their performance. A good implementation of a specification is identified by having some optimal behaviour in common with it. In other words, a good refinement corresponds to a reduction of non-optimal behaviour. This also means that the abstract specification sets a boundary for the performance of any implementation. We introduce the probabilistic action system formalism which combines refinement with performance. In our current study we measure performance in terms of long-run expected average-cost. Performance is expressed by means of probability and expected costs. Probability is needed to express uncertainty present in physical environments. Expected costs express physical or abstract quantities that describe a system. They encode the performance objective. The behaviour of probabilistic action systems is described by traces of expected costs. A corresponding notion of refinement and simulation-based proof rules are introduced. Probabilistic action systems are based on discrete-time Markov decision processes. Numerical methods solving the optimisation problems posed by Markov decision processes are well-known, and used in a software tool that we have developed. The tool computes an optimal behaviour of a specification A thus assisting in the search for a good implementation C .
Stefan Hallerstede, Michael J. Butler
Formal Aspects Comput.2
2003 Towards Formalizing UML State Diagrams in CSP
abstract
The UML (Unified Modeling Language) state diagram notation by M. Fowler and K. Scott (2000) is a graphical language which comprises an extensive set of constructs with good structural semantics but lack of a formal behavioral semantics. With this regard, we have used the Hoare's CSP (Communicating and Sequential Processes) to formalize the behavior of UML SD. The fact that CSP is supported by model-checkers such as FDR enables a system design using a state diagram to be formally checked during design stage. This paper presents the formalization which would allow us to reason about the behavior of UML SD in CSP.
Muan Yong Ng, Michael J. Butler
SEFM2
2002 Tool Support for Visualizing CSP in UML
Muan Yong Ng, Michael J. Butler
ICFEM2
2002 On the Use of Data Refinement in the Development of Secure Communications Systems
abstract
Abstract. We report on experiences gained from the application of data refinement techniques to the development of examples of secure communications systems. The aim was to the carry the development from initial abstract specification of security services through to detailed designs. The development approach was based on action systems, with B and CSP being used as concrete notations. The security services in question are a confidential communications service and an authenticated transaction service. Refinements include explicit representations of intruder behaviour. The paper makes several interrelated contributions. It demonstrates the feasibility of applying a refinement approach to this type of problem, including an effective way of combining B and CSP in refinements. It introduces a more systematic approach to the development of abstraction invariants and refinement checking. Finally, it illustrates the limitation, when modelling security protocols, of a formalism that does not deal with probability.
Michael J. Butler
Formal Aspects Comput.1
2000 A Process Compensation Language
Michael J. Butler, Carla Ferreira 0001
IFM1
2000 csp2B: A Practical Approach to Combining CSP and B
abstract
Abstract. This paper describes the tool csp2B, which provides a means of combining CSP-like descriptions with standard B specifications. The notation of CSP provides a convenient way of describing the order in which the operations of a B machine may occur. The function of the tool is to convert CSP-like specifications into standard machine-readable B specifications, which means that they may be animated and appropriate proof obligations may be generated. Use of csp2B means that abstract specifications and refinements may be specified purely using CSP or using a combination of CSP and B. The translation is justified in terms of an operational semantics.
Michael J. Butler
Formal Aspects Comput.1
1999 Calculational Derivation of Pointer Algorithms from Tree Operations
Michael J. Butler
Sci. Comput. Program.1
1999 Reasoning about Grover's quantum search algorithm using probabilistic wp
abstract
Grover's search algorithm is designed to be executed on a quantum-mechanical computer. In this article, the probabilistic wp -calculus is used to model and reason about Grover's algorithm. It is demonstrated that the calculus provides a rigorous programming notation for modeling this and other quantum algorithms and that it also provides a systematic framework of analyzing such algorithms.
Michael J. Butler, Pieter H. Hartel
ACM Trans. Program. Lang. Syst.1
1998 Fusion and Simultaneous Execution in the Refinement Calculus
Ralph-Johan Back, Michael J. Butler
Acta Informatica2
1996 Stepwise Refinement of Communicating Systems
Michael J. Butler
Sci. Comput. Program.1
1995 Exploring Summation and Product Operators in the Refinement Calculus
Ralph-Johan Back, Michael J. Butler
MPC2
1995 Action Systemes, Unbounded Nondeterminism, and Infinite Traces
abstract
Abstract Morgan [Mor90a] has described a correspondence between Back's action systems [BKS83] and the conventional failures-divergences model of Hoare's communicating 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 extended infinite traces model of CSP [RoB89] which treats unbounded nondeterminism. We extend the CSP-action system correspondence, using that model instead, to take the unbounded nondeterminism of action systems properly into account. In passing, we develop a definition of the weakest precondition under which an infinite heterogeneous trace of actions is enabled.
Michael J. Butler, Carroll Morgan
Formal Aspects Comput.1
1993 Refinement and Decomposition of Value-Passing Action Systems
Michael J. Butler
CONCUR1