Formal methods
Software Engineering
Programming Languages
Blockchain
98
Scopus Publications
Scopus Publications
Blockchain technology disruptions: Exploring accounting and auditing academics and practitioners' perception Musbaudeen Titilope Oladejo, Vida Botes, Mary Low, Steve Reeves Accounting and Finance, 2024 This study explores the practical impact of blockchain technology (BCT), which contrasts strongly with literature that has predominantly hypothesised BCT's potential to disrupt accounting practice. We interviewed 44 practitioners and academics with knowledge of BCT across 13 countries and industries. We employed the technological context of the technological, organisation and environmental (TOE) theoretical framework within a constructivist‐interpretivist paradigm to understand any nuanced practical realities of BCT's impact. Our research ascertained an expectation gap regarding the expected BCT impacts on accounting and auditing practices versus the current reality. Our findings support the sceptics and oppose prior enthusiastic claims that BCT disrupts accounting and auditing functions.
Provably Correct Smart Contracts: An Approach using DeepSEA Daniel Britten, Vilhelm Sjöberg, Steve Reeves Splash Companion 2022 Companion Proceedings of the 2022 ACM SIGPLAN International Conference on Systems Programming Languages and Applications Software for Humanity, 2022 It is possible to download a piece of software over the internet and then verify its correctness locally using an appropriate trusted proof system. However, on a blockchain like Ethereum, smart contracts cannot be altered once deployed. This guarantee of immutability makes it possible for end users to interact collectively with a 'networked' piece of software, with the same opportunity to verify its correctness. Formal verification of smart contracts on a blockchain therefore offers an unprecedented opportunity for end users to collectively interact with a deployed instance of software that they can verify while not relying on a central authority. All that is required to be trusted beyond the blockchain itself is an appropriate proof system, a component which always needs to be in the trusted computing base, and whose rules and definitions can be public knowledge. DeepSEA (Deep Simulation of Executable Abstractions) could serve as such a proof system.
Modelling a Blockchain for Smart Contract Verification using DeepSEA Daniel Britten, Steve Reeves Ftscs 2022 Proceedings of the 8th ACM SIGPLAN International Workshop on Formal Techniques for Safety Critical Systems Co Located with Splash 2022, 2022 To create trustworthy programs, the 'gold standard' is specifications at a high-enough level to clearly correspond to the informal specifications, and also a refinement proof linking these high-level specifications down to, in our case, executable bytecode. The DeepSEA system demonstrates how this can be done, in the context of smart contracts on the Ethereum blockchain. A key component of this is the model of the blockchain on which the smart contracts reside. When doing proofs in DeepSEA, it is critical to have such a model, which allows for the writing of specifications at a high-level clearly corresponding to informal specifications. A candidate model for doing so and its usefulness for carrying out proofs is discussed in this paper.
Using Coq to Enforce the Checks-Effects-Interactions Pattern in DeepSEA Smart Contracts Openaccess Series in Informatics, 2021
SeqCheck: A model checking tool for interactive systems Jessica Turner, Judy Bowen, Steve Reeves Eics 2020 12th ACM Sig Chi Symposium on Engineering Interactive Computing Systems Proceedings, 2020 In this paper we describe SeqCheck, a model checking tool which allows us to investigate if certain properties hold for an interactive system. These properties allow us to determine if the interaction sequence model of an interactive system's overlap component behaves as expected. We describe the properties we have defined for this overlap component and then demonstrate the use of SeqCheck to identify when these do not hold.
Model-based Testing of Interactive Systems using Interaction Sequences Jessica Turner, Judy Bowen, Steve Reeves Proceedings of the ACM on Human Computer Interaction, 2020 Testing is an important part of the software engineering process to help ensure that systems will behave as expected. In this paper we investigate interactive system testing, taking into consideration the different components of the system. Interactive systems have three different components, the interactive, functional and overlap. The interactive component is the interface of the interactive system, the functional the underlying instructions of the interactive system, and the overlap component the point at which the interactive and functional components intersect. The interactive and functional components are often tested separately, however, problems can occur where these components overlap. Therefore, in this paper we present a model-based testing approach specifically designed to inspect the overlap component behaviour and to ensure that it behaves as expected.
Formal modelling of safety-critical interactive devices using coloured petri nets Sapna Jaidka, Steve Reeves, Judy Bowen Lecture Notes in Computer Science Including Subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics, 2020 Formal modelling is now widely applied for creating models of safety-critical interactive systems. Most approaches built so far either focus on the user interface or on the functional part of a safety-critical interactive system. This paper aims to apply formal methods for modelling and specifying the user interface, interaction and functional aspects of a safety-critical system in a single model using Coloured Petri Nets (CPN). We have used CPNs because of its expressive graphic representation and the ability to simulate the system behaviour. The technique is illustrated through a case study of the Niki T34 Infusion Pump.
A Coloured Petri Net Approach to Model and Analyze Safety-Critical Interactive Systems Sapna Jaidka, Steve Reeves, Judy Bowen Proceedings Asia Pacific Software Engineering Conference APSEC, 2019 To gain confidence in safety-critical interactive systems, formal modelling and analysis plays a vital role. The aim of this paper is to use Coloured Petri Nets to model and analyze safety-critical interactive systems. We present a technique to construct a single Coloured Petri Net model of the user interface, interaction and functionality of safety-critical interactive systems and then analyze the achieved Coloured Petri Net model using a state space analysis method. There are several reasons for using Coloured Petri Nets. Coloured Petri Nets provides a graphical representation and hierarchical structuring mechanism, and a state space verification technique, which allows querying the state space to investigate behaviours of a system. There are several tools that supports Coloured Petri Nets including the CPN Tool which helps in building CPN models and allows simulation and analysis using state spaces. The technique to model and analyze safety-critical interactive systems is illustrated using a simplified infusion pump example.
Proof-of-learning: A blockchain consensus mechanism based on machine learning competitions Felipe Bravo-Marquez, Steve Reeves, Martin Ugarte Proceedings 2019 IEEE International Conference on Decentralized Applications and Infrastructures Dappcon 2019, 2019 This article presents WekaCoin, a peer-to-peer cryptocurrency based on a new distributed consensus protocol called Proof-of-Learning. Proof-of-learning achieves distributed consensus by ranking machine learning systems for a given task. The aim of this protocol is to alleviate the computational waste involved in hashing-based puzzles and to create a public distributed and verifiable database of state-of-the-art machine learning models and experiments.
Preface J. Derrick, Brijesh Dongol, S. Reeves Electronic Proceedings in Theoretical Computer Science Eptcs, 2018
Simulating interaction sequences Jessica Turner, Judy Bowen, Steve Reeves Proceedings of the ACM Sigchi Symposium on Engineering Interactive Computing Systems Eics 2018, 2018
Foreword Eics 12 Proceedings of the 2012 ACM Sigchi Symposium on Engineering Interactive Computing Systems, 2012
Preface to the volume Derrick J, Fitzgerald J, Gnesi S, Khurshid S, Leuschel M, et al. Lecture Notes in Computer Science Including Subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics, 2012
Editorial Eerke Boiten, John Derrick, Jin Song Dong, Steve Reeves Formal Aspects of Computing, 2012
Abstract State Machines, Alloy, B and Z: Preface Lecture Notes in Computer Science Including Subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics, 2010
Preface Eerke Boiten, John Derrick, Steve Reeves Electronic Notes in Theoretical Computer Science, 2009
A robust semantics hides fewer errors Steve Reeves, David Streader Lecture Notes in Computer Science Including Subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics, 2009
Formal methods and refinement for user-centred design artefacts Proceedings of Nzcsrsc 2007 the 5th New Zealand Computer Science Research Student Conference, 2007
Feature refinement Steve Reeves, David Streader Proceedings 5th IEEE International Conference on Software Engineering and Formal Methods Sefm 2007, 2007
Modular synthesis of discrete controllers Petra Malik, Robi Malik, David Streader, Steve Reeves Proceedings of the IEEE International Conference on Engineering of Complex Computer Systems ICECCS, 2007
Logic and refinement for Charts Conferences in Research and Practice in Information Technology Series, 2006
Comparison of Data and Process Refinement Steve Reeves, David Streader Lecture Notes in Computer Science Including Subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics, 2003
Operation refinement and monotonicity in the schema calculus Moshe Deutsch, Martin C. Henson, Steve Reeves Lecture Notes in Computer Science Including Subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics, 2003
Z logic and its consequences Computing and Informatics, 2003
μ-chart-based specification and refinement Doug Goldson, Greg Reeve, Steve Reeves Lecture Notes in Computer Science Including Subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics, 2002
μ Charts and Z: Hows, whys, and wherefores Greg Reeve, Steve Reeves Lecture Notes in Computer Science Including Subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics, 2000
A logic for the schema calculus Martin C. Henson, Steve Reeves Lecture Notes in Computer Science Including Subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics, 1998