English
Related papers

Related papers: Translating Event-B machines to Eiffel programs

200 papers

Event-B has been actively used within the EU Deploy project to model dependable systems from various application domains. As a result, we have created a number of formal approaches to explicitly reason about dependability in the refinement…

Software Engineering · Computer Science 2012-10-29 Elena Troubitsyna

Event-B is one of more popular notations for model-based, proof driven specification. It offers a fairly high-level mathematical lan- guage based on FOL and ZF set theory and an economical yet expres- sive modelling notation. Model…

Software Engineering · Computer Science 2016-11-10 Paulius Stankaitis , Alexei Iliasov , David Adjepon-Yamoah , Alexander Romanovsky

Event-B is a refinement-based formal method that has been shown to be useful in developing concurrent and distributed programs. Large models can be decomposed into sub-models that can be refined semi-independently and executed in parallel.…

Logic in Computer Science · Computer Science 2011-06-22 Pontus Boström , Fredrik Degerlund , Kaisa Sere , Marina Waldén

Correct operation of many critical systems is dependent on the data consistency and integrity properties of underlying databases. Therefore, a verifiable and rigorous database design process is highly desirable. This research aims to…

Databases · Computer Science 2018-05-16 Ahmed Al-Brashdi , Michael Butler , Abdolbaghi Rezazadeh

This paper considers how a formal mathematically-based model can be used in support of evolutionary software development, and in particular how such a model can be kept consistent with the implementation as it changes to meet new…

Software Engineering · Computer Science 2011-11-14 A. Gravell , Y. Howard , J. C. Augusto , C. Ferreira , S. Gruner

Testing has become an indispensable activity of software development, yet writing good and relevant tests remains a quite challenging task. One well-known problem is that it often is impossible or unrealistic to test for every outcome, as…

Programming Languages · Computer Science 2017-08-18 Dimitri Racordon , Didier Buchs

We present a machine-checked soundness proof of a translation of Event-B to the Java Modeling Language (JML). The translation is based on an operator EventB2Jml that maps Evnet-B events to JML method specifications, and deterministic and…

Software Engineering · Computer Science 2013-09-11 Néstor Cataño , Camilo Rueda , Tim Wahls

Models are centrally important in many scientific fields. A model is a representation of a selected part of the world, which is the model s target system. Here, a system consists of a software portion as a component among many others.…

Software Engineering · Computer Science 2020-05-22 Sabah Al-Fedaghi

To overcome the limitations of both approaches classical and formal for the development of complex software, we proposed a hybrid approach combining the formal approach (Event-B) and the classical approach (UML/OCL). Upstream phases of our…

Software Engineering · Computer Science 2012-12-21 Imen Sayar

Earth System Models (ESMs) are critical for understanding past climates and projecting future scenarios. However, the complexity of these models, which include large code bases, a wide community of developers, and diverse computational…

Logic in Computer Science · Computer Science 2025-10-16 Alper Altuntas , Allison H. Baker , John Baugh , Ganesh Gopalakrishnan , Stephen F. Siegel

Nowadays, the usefulness of a formal language for ensuring the consistency of requirements is well established. The work presented here is part of the definition of a formally-grounded, model-based requirements engineering method for…

Software Engineering · Computer Science 2017-12-21 Steve Tueno , Régine Laleau , Amel Mammar , Marc Frappier

Formal methods provide systematic and rigorous techniques for software development. We strongly believe that they must be taught in computer science curricula. In this paper we present the pedagogic rationale and the concrete implementation…

Logic in Computer Science · Computer Science 2021-11-17 Salwa Souaf , Frédéric Loulergue

The UML allows us to specify models in a precise, complete and unambiguous manner. In particular, the UML addresses the specification of all important decisions regarding analysis, design and implementation. Although UML is not a visual…

Software Engineering · Computer Science 2010-01-26 S. S. Riaz Ahamed

Formal semantics provides rigorous, mathematically precise definitions of programming languages, with which we can argue about program behaviour and program equivalence by formal means; in particular, we can describe and verify our…

Programming Languages · Computer Science 2020-11-23 Péter Bereczky , Dániel Horpácsi , Simon Thompson

The substitution of a system with another one may occur in several situations like system adaptation, system failure management, system resilience, system reconfiguration, etc. It consists in replacing a running system by another one when…

Software Engineering · Computer Science 2014-05-09 Guillaume Babin

This article presents industrial experience of validating large data sets against specification written using the B / Event-B mathematical language and the ProB model checker.

Software Engineering · Computer Science 2012-10-29 Thierry Lecomte , Lilian Burdy , Michael Leuschel

Tool-assisted analysis of software systems and convenient guides to practise the formal methods are still motivating challenges. This article addresses these challenges. We ex periment on analysing a formal specification from multiple…

Software Engineering · Computer Science 2016-11-25 Christian Attiogbe

In the digital age, ensuring the correctness, safety, and reliability of software through formal verification is paramount, particularly as software increasingly underpins critical infrastructure. Formal verification, split into theorem…

Software Engineering · Computer Science 2026-04-03 Zhiyong Chen , Jialun Cao , Jiarong Wu , Chang Xu , Shing-Chi Cheung

A successful automated program proof is, in software verification, the ultimate triumph. In practice, however, the road to such success is paved with many failed proof attempts. Unlike a failed test, which provides concrete evidence of an…

Software Engineering · Computer Science 2023-04-25 Li Huang , Bertrand Meyer

Modular reasoning about class invariants is challenging in the presence of dependencies among collaborating objects that need to maintain global consistency. This paper presents semantic collaboration: a novel methodology to specify and…

Software Engineering · Computer Science 2014-05-08 Nadia Polikarpova , Julian Tschannen , Carlo A. Furia , Bertrand Meyer