Overall Objectives
Application Domains
New Results
Contracts and Grants with Industry
Other Grants and Activities

Section: New Results

Languages and Compilation Techniques

Compilation of LOTOS

Participants : Hubert Garavel, Wendelin Serwe.

The Cadp toolbox contains several tools dedicated to the Lotos language, namely: the Cæsar.adt compiler [2] for the data type part of Lotos , the Cæsar compiler [9] for the process part of Lotos , and the Cæsar.indent pretty-printer.

In 2006, we performed maintenance activities for these tools (two bugs fixed in Cæsar , one bug fixed in the Cæsar.bdd tool invoked by Cæsar , and two enhancements in Cæsar.indent ). We also improved the C code generated by Cæsar and Cæsar.adt to avoid warnings emitted by the most recent C compilers.

We pursued our study of state space reduction techniques, our goal being to decrease the size of the graphs generated by Cæsar , still preserving strong bisimulation between the original and reduced graphs.

Our work on state space reduction based on live variable analysis resulted in version 7.0 of Cæsar (previously named Cæ ), which was officially released as part of Cadp in July 2006. On all Cadp demos, Cæsar  7.0 reduced the state space by a mean factor of 45 (we observed a maximum factor of 4,400) as regards the number of states and by a mean factor of 38 (we observed a maximum factor of 3,100) as regards the number of transitions. This work led to a journal publication [20] .

Additionally, W. Serwe experimented further uses of data-flow analysis to improve the efficiency for enumerative verification. A prototype version of Cæsar was developed and experimented in the framework of the FormalFame Plus contract (see §  7.1 ): we obtained a memory reduction by a factor of 1.4 and a time reduction by a factor of 2.

Compilation of E-LOTOS and LOTOS NT

Participants : David Champelovier, Hubert Garavel, Frédéric Lang, Wendelin Serwe.

As regards the E-Lotos language — and, more specifically, its Lotos NT variant elaborated by the Vasy project team — we worked in two directions:

Source-Level Translations between Concurrent Languages

Participants : Hubert Garavel, Abdul Malik Khan, Frédéric Lang, Olivier Ponsini, Gwen Salaün, Wendelin Serwe.

Although process algebras are, from a technical point of view, the best formalism to describe concurrent systems, they are not used as widely as they could be. Besides the steep learning curve of process algebras, which is traditionally mentioned as the main reason for this situation, it seems also that the process algebra community scattered its efforts by developing too many languages, similar in concept but incompatible in practice. Even the advent of two international standards, such as Lotos (in 1989) and E-Lotos (in 2001), did not remedy this fragmentation.

To address this problem, we started investigating source-level translators from various process algebras into Lotos , so as to widen the applicability of the Cadp tools. One first example was the Lnt2Lotos tool suite (see §  6.2.2 ). In 2006, we studied also translators for other concurrent languages:


Logo Inria