Compiling Argos into Boolean Equations


4th International School and Symposium
Formal Techniques in Real Time and Fault Tolerant Systems

Sept 9-10 (School) and Sept 11-13 (Symposium) 1996,
Uppsala, Sweden

Compiling Argos into Boolean equations


In most imperative synchronous languages (Esterel, Argos, Statecharts,...), the semantics of the control structures may be conveniently described as compositions of Mealy machines. This constitutes the usual formal semantics of Argos, for instance, where basic components are Mealy machines. On the other hand, the compilation process should not be based upon an explicit generation of the Mealy machine that represents the behaviour of the whole program, because this machine may have a very large number of states. Hence we try to perform a symbolic compilation into a Mealy machine implicitly represented by a set of Boolean equations. We give here the direct semantics of Argos in terms of such equations, and show that this semantics coincides with the usual one. The current implementation of the Argos compiler produces DC code, which is the common equational format for synchronous languages. This will allow to merge imperative and declarative synchronous languages (Argos and Lustre, for instance), by merging DC files.

BibTeX entry:
@INPROCEEDINGS{MH96b, AUTHOR = {F. Maraninchi and N. Halbwachs}, TITLE = {Compiling Argos into Boolean equations} BOOKTITLE = {Formal Techniques for Real-Time and Fault-Tolerance (FTRTFT)}, ADDRESS = {Uppsala (Sweden)}, PUBLISHER = {Springer Verlag, LNCS} MONTH = sep, YEAR = 1996 }

PostScript file