Stefan Hallerstede

dblp:75/5110 · DBLP profile ↗
← Back
25ranked-venue papers
17as first author
5since 2021 · last 2025
0000-0001-9952-0214ORCID · verified

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

Software engineering, systems software and programming languages · 19 · 13 first-author · 4 since 2021Theory of computation · 8 · 6 first-author · 2 since 2021
YearPublicationVenuePosition
2025 Proof Engineering in Logika: Synergistically Integrating Automated and Semi-automated Program Verification
Stefan Hallerstede, Robby, John Hatcliff, Jason Belt, David S. Hardin
FMICS1
2025 On Formal Methods Thinking in Computer Science Education
abstract
Formal Methods (FMs) radically improve the quality of the code artefacts they help to produce. They are simple, probably accessible to first-year undergraduate students and certainly to second-year students and beyond. Nevertheless, in many cases, they are not part of a general recommendation for course curricula, i.e., they are not taught — and yet they are valuable. One reason for this is that teaching “Formal Methods” is often confused with teaching logic and theory. This article advocates what we call FM thinking : the application of ideas from Formal Methods applied in informal, lightweight, practical and accessible ways. We will argue here that FM thinking should be part of the recommended curriculum for every Computer Science student, for even students who train only in that “thinking” will become much better programmers. However, there will be others who, exposed to those ideas, will be ideally positioned to go further into the more theoretical background: why the techniques work, how they can be automated, and how new ones can be developed. Those students would follow subsequently a specialised, more theoretical stream, including topics such as semantics, logics, verification and proof-automation techniques.
Brijesh Dongol, Catherine Dubois, Stefan Hallerstede, Eric C. R. Hehner, Carroll Morgan, Peter Müller 0001, Leila Ribeiro 0001, Alexandra Silva 0001, Graeme Smith 0001, Erik P. de Vink
Formal Aspects Comput.3
2025 A mechanized semantics for component-based systems in the HAMR AADL runtime
Stefan Hallerstede, John Hatcliff
Sci. Comput. Program.1
2024 Loose Observation in Event-B
Stefan Hallerstede
ABZ1
2022 Towards Secure Digital Twins
Tomas Kulik, Cláudio Gomes 0001, Hugo Daniel Macedo, Stefan Hallerstede, Peter Gorm Larsen
ISoLA (4)4
2018 A Non-unified View of Modelling, Specification and Programming
Stefan Hallerstede, Peter Gorm Larsen, John S. Fitzgerald
ISoLA (1)1
2018 Three Is a Crowd: SAT, SMT and CLP on a Chessboard
Sebastian Krings, Michael Leuschel, Philipp Koerner, Stefan Hallerstede, Miran Hasanagic
PADL4
2018 From Software Specifications to Constraint Programming
Stefan Hallerstede, Miran Hasanagic, Sebastian Krings, Peter Gorm Larsen, Michael Leuschel
SEFM1
2018 Tobias Nipkow and Gerwin Klein: Concrete Semantics with Isabelle/HOL - Springer Verlag, 2014, x + 289 pp, € 63, 29 (Hardback), ISBN 978-3-319-10542-0, http: //www.concrete-semantics.org/
abstract
No abstract available.
Stefan Hallerstede
Formal Aspects Comput.1
2016 The correctness of event-B inductive convergence
Stefan Hallerstede
Sci. Comput. Program.1
2014 Refinement of decomposed models by interface instantiation
Stefan Hallerstede, Thai Son Hoang
Sci. Comput. Program.1
2014 A method and tool for tracing requirements into specifications
Stefan Hallerstede, Michael Jastram, Lukas Ladenberger
Sci. Comput. Program.1
2013 Validation of formal models by refinement animation
Stefan Hallerstede, Michael Leuschel, Daniel Plagge
Sci. Comput. Program.1
2012 Experiments in program verification using Event-B
abstract
Abstract The Event-B method can be used to model all sorts of discrete event systems, among them sequential programs. In this article we describe our experiences with using Event-B by way of two examples. We present a simple model of a factorial program, explaining the method, and a more intricate model of the Quicksort algorithm, providing some insights into strengths and weaknesses of Event-B. The two models are interspersed with our observations and some suggestions of how, we believe, Event-B could evolve. This evaluation of Event-B is intended to serve for determining directions for the evolution of Event-B and judging progress. It is our hope that the observations and suggestions can also be put to use for similar modelling formalisms, such as Z, ASM or VDM.
Stefan Hallerstede, Michael Leuschel
Formal Aspects Comput.1
2011 On Fitting a Formal Method into Practice
Rainer Gmehlich, Katrin Grau, Stefan Hallerstede, Michael Leuschel, Felix Lösch, Daniel Plagge
ICFEM3
2011 Refining Nodes and Edges of State Machines
Stefan Hallerstede, Colin F. Snook
ICFEM1
2011 On the purpose of Event-B proof obligations
abstract
Abstract Event-B is a formal modelling method which is claimed to be suitable for diverse modelling domains, such as reactive systems and sequential program development. This claim hinges on the fact that any particular model has an appropriate semantics. In Event-B, this semantics is provided implicitly by proof obligations associated with a model. There is no fixed semantics though. In this article we argue that this approach is beneficial to modelling because we can use similar proof obligations across a variety of modelling domains. By way of two examples we show how similar proof obligations are linked to different semantics. A small set of proof obligations is thus suitable for a whole range of modelling problems in diverse modelling domains.
Stefan Hallerstede
Formal Aspects Comput.1
2011 Constraint-based deadlock checking of high-level specifications
abstract
Abstract Establishing the absence of deadlocks is important in many applications of formal methods. The use of model checking for finding deadlocks in formal models is often limited. In this paper, we propose a constraint-based approach to finding deadlocks employing the ProB constraint solver. We present the general technique, as well as various improvements that had to be performed on ProB's Prolog kernel, such as reification of membership and arithmetic constraints. This work was guided by an industrial case study, where a team from Bosch was modelling a cruise control system. Within this case study, ProB was able to quickly find counterexamples to very large deadlock-freedom constraints. In the paper, we also present other successful applications of this new technique. Experiments using SAT and SMT solvers on these constraints were thus far unsuccessful.
Stefan Hallerstede, Michael Leuschel
Theory Pract. Log. Program.1
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.3
2007 Qualitative Probabilistic Modelling in Event-B
Stefan Hallerstede, Thai Son Hoang
IFM1
2007 Refinement, Decomposition, and Instantiation of Discrete Models: Application to Event-B
Jean-Raymond Abrial, Stefan Hallerstede
Fundam. Informaticae2
2006 An Open Extensible Tool Environment for Event-B
Jean-Raymond Abrial, Michael J. Butler, Stefan Hallerstede, Laurent Voisin
ICFEM3
2004 Circuit Design by Refinement in EventB1
Stefan Hallerstede, Yann Zimmermann
FDL1
2004 A hardware/software codesign framework for developing complex embedded systems using formal model refinement
Nikos S. Voros, Colin F. Snook, Stefan Hallerstede, Thierry Lecomte
FDL3
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.1