Book Chapter10.1007/978-3-319-15075-8_1
LLVM-Based Code Generation for B
Richard Bonichon,David Déharbe,Thierry Lecomte,Valério Augusto Soares de Medeiros +3 more
- 29 Sep 2014
- pp 1-16
6
TL;DR: This paper describes a translation for essential implementation constructs of the B language into LLVM source code, implemented into the b2llvm compiler.
read more
Abstract: We present b2llvm, a multi-platform code generator for the B-method The b2llvm code generator currently handles the following elements of the B language: simple data types, imperative instructions and component compositions In particular, this paper describes a translation for essential implementation constructs of the B language into LLVM source code, implemented into the b2llvm compiler We use an example-based approach for this description
read more
Chat with Paper
AI Agents for this Paper
Find similar papers on Google Scholar, PubMed and Arxiv
Write a critical review of this paper
Analyze citations of this paper to find unaddressed research gaps
Citations
Integrating formal specifications into applications: the ProB Java API
TL;DR: This paper presents a Java API to the ProBanimator and model checker and describes several case studies that use this API as enabling technology to interact with a formal specification at runtime.
A Multi-target Code Generator for High-Level B
Fabian Vu,Dominik Hansen,Philipp Körner,Michael Leuschel +3 more
- 02 Dec 2019
TL;DR: Within high-level specification languages such as B, code is refined in many steps until a small “implementable” subset of the language is reached, then code generators are used, targeting programming languagessuch as C or Ada.
7
Embedding High-Level Formal Specifications into Applications.
Philipp Körner,Jens Bendisposto,Jannik Dunkelau,Sebastian Krings,Michael Leuschel +4 more
- 07 Oct 2019
TL;DR: The common formal methods workflow consists of formalising a model followed by applying model checking and proof techniques and once an appropriate level of certainty is reached, code generators are used in order to gain executable code.
7
B-PERFect - Applying the PERF Approach to B Based System Developments
Alexandra Halchin,Abderrahmane Feliachi,Neeraj Kumar Singh,Yamine Aït-Ameur,Julien Ordioni +4 more
- 14 Nov 2017
TL;DR: The B-PERFect method is proposed to generalize the application of the PERF approach for critical systems which are based on the B method, and focuses on transformation strategy from B language to the pivot language of PERF: HLL.
7
BTestBox: A Tool for Testing B Translators and Coverage of B Models
Diego de Azevedo Oliveira,Valério Medeiros,David Déharbe,Martin A. Musicante +3 more
- 09 Oct 2019
TL;DR: The BTestBox, a tool for automatic generation of tests for software components developed with the B method, is proposed, showing performance numbers that are one order of magnitude better than the ones obtained in the tool’s previous version.
3
References
LLVM: a compilation framework for lifelong program analysis & transformation
Chris Lattner,Vikram Adve +1 more
- 20 Mar 2004
TL;DR: The design of the LLVM representation and compiler framework is evaluated in three ways: the size and effectiveness of the representation, including the type information it provides; compiler performance for several interprocedural problems; and illustrative examples of the benefits LLVM provides for several challenging compiler problems.
Formal verification of a realistic compiler
TL;DR: This paper reports on the development and formal verification of CompCert, a compiler from Clight (a large subset of the C programming language) to PowerPC assembly code, using the Coq proof assistant both for programming the compiler and for proving its correctness.
Formalizing the LLVM intermediate representation for verified program transformations
Jianzhou Zhao,Santosh Nagarakatte,Milo M. K. Martin,Steve Zdancewic +3 more
- 25 Jan 2012
TL;DR: Vellvm provides a mechanized formal semantics of LLVM's intermediate representation, its type system, and properties of its SSA form, which includes multiple operational semantics and proves relations among them to facilitate different reasoning styles and proof techniques.
Formalisation of B in Isabelle/HOL
TL;DR: This work aims at a foundation to formalise the full abstract machine notation, in order to produce a formally checked proof obligation generator, based on the B-Book.
27
BETA: a b based testing approach
Ernesto Cid Brasil de Matos,Anamaria Martins Moreira +1 more
- 23 Sep 2012
TL;DR: An approach to generate test specifications based on a formal notation: the B-Method, which uses restrictions described on a B specification, such as invariants, preconditions and conditional statements, to create unit tests for an operation.