Extracting TLA+ Specifications Out of a Program for a BEAM Virtual Machine
Articles
Andrius Maliuginas
Vilnius University, Lithuania
Karolis Petrauskas
Vilnius University, Lithuania
Published 2024-05-13
https://doi.org/10.15388/LMITT.2024.14
PDF

Keywords

TLA+
Elixir
translation
specification refinement
distributed systems
message passing

How to Cite

Maliuginas, A. and Petrauskas, K. (2024) “Extracting TLA+ Specifications Out of a Program for a BEAM Virtual Machine”, Vilnius University Open Series, pp. 98–105. doi:10.15388/LMITT.2024.14.

Abstract

Formal specifications are mathematical descriptions of the desired system functionality. Since they are usually written separately from the software itself, it is important to ensure that the software implements what the specification requires. A common approach to achieve this is to have a specification detailed enough to generate source code but those are rarely written due to expertise required. If code is not generated, then currently there is no straightforward way to reliably show that implementation conforms to initial formal specification. This research attempts to define a way to extract formal TLA+ specification by translating Elixir source code and generating detailed specification to give the system developer the ability to show that it refines the initial one.

PDF
Creative Commons License

This work is licensed under a Creative Commons Attribution 4.0 International License.

Downloads

Download data is not yet available.