Translating TLA+ to b for validation with ProB

  • Authors:
  • Dominik Hansen;Michael Leuschel

  • Affiliations:
  • Institut für Informatik, Universität Düsseldorf, Düsseldorf, Germany;Institut für Informatik, Universität Düsseldorf, Düsseldorf, Germany

  • Venue:
  • IFM'12 Proceedings of the 9th international conference on Integrated Formal Methods
  • Year:
  • 2012

Quantified Score

Hi-index 0.00

Visualization

Abstract

TLA+ and B share the common base of predicate logic, arithmetic and set theory. However, there are still considerable differences, such as very different approaches to typing and modularization. There is also considerable difference in the available tool support. In this paper, we present a translation of the non-temporal part of TLA+ to B, which makes it possible to feed TLA+ specifications into existing tools for B. Part of this translation must include a type inference algorithm, in order to produce typed B specifications. There are many other tricky aspects, such as translating modules as well as let/in and if/then/else expressions. We also present an integration of our translation into ProB. ProB thus provides a complementary tool to the explicit state model checker TLC, with convenient animation and constraint solving for TLA+. We also present a series of case studies, highlighting the complementarity to TLC. In particular, we highlight the sometimes dramatic difference in performance when it comes to solving complicated constraints in TLA+.