Chapter

FM’99 — Formal Methods

Volume 1709 of the series Lecture Notes in Computer Science pp 983-1007

Date:

A translation of statecharts to esterel

  • S. A. SeshiaAffiliated withSchool of Technology&Computer Science, Tata Institute of Fundamental Research
  • , R. K. ShyamasundarAffiliated withSchool of Technology&Computer Science, Tata Institute of Fundamental Research
  • , A. K. BhattacharjeeAffiliated withReactor Control Division, Bhabha Atomic Research Centre
  • , S. D. DhodapkarAffiliated withReactor Control Division, Bhabha Atomic Research Centre

Abstract

Statecharts and Esterel are two formalisms that have been widely used in the development of reactive systems. Statecharts are a powerful graphical formalism for system specification. esterel is a rich synchronous programming language with supporting tools for formal verification. In this paper, we propose a translation of Statecharts to esterel and discuss such an implementation. A characteristic feature of the translation is that deterministic Statechart programs can be effectively translated to esterel and hence, the tools of verification of esterel can be used for verifying Statechart programs as well. The translation serves as a diagnostic tool for checking nondeterminism. The translation is syntax-directed and is applicable for synchronous and asynchronous (referred to as the superstep model) models. In the paper, we shall describe the main algorithms for translation and implementation and illustrate the same with examples. We have built a prototype system based on the translation. It has the advantages of the visual power usually liked by engineers reflected in Statecharts and of a language that has a good semantic and implementation basis such as esterel that can be gainfully exploited in the design of reliable reactive systems.