Section: Software
Prototypes
Automatic controller generation
Participants : Emil Dumitrescu, Alain Girault [ contact person ] .
We have developed a software tool chain to allow the specification of models, the controller synthesis, and the execution or simulation of the results. It is based on existing synchronous tools, and thus consists primarily in the use and integration of Sigali (http://www.irisa.fr/vertecs/Logiciels/sigali.html ) and Mode Automata (http://www-verimag.imag.fr ).
Useful component templates and relevant properties can be materialized, on one hand by libraries of task models, and, on the other hand, by properties and synthesis objectives.
Rapture
Participant : Bertrand Jeannet.
Rapture [58] [40] is a verification tool that was developed jointly by BRICS (Denmark) and Inria in years 2000–2002. The tool is designed to verify reachability properties on Markov Decision Processes (MDP), also known as Probabilistic Transition Systems. This model can be viewed both as an extension to classical (finite-state) transition systems extended with probability distributions on successor states, or as an extension of Markov Chains with non-determinism. We have developed a simple automata language that allows the designer to describe a set of processes communicating over a set of channels à la CSP. Processes can also manipulate local and global variables of finite type. Probabilistic reachability properties are specified by defining two sets of initial and final states together with a probability bound. The originality of the tool is to provide two reduction techniques that limit the state space explosion problem: automatic abstraction and refinement algorithms, and the so-called essential states reduction.
Abstract interpretation tools and libraries
Participant : Bertrand Jeannet.
We also develop and maintain smaller libraries of general use for people working in the static analysis and abstract interpretation community.
- Fixpoint
(http://bjeannet.gforge.inria.fr/fixpoint ): a generic fix-point engine written in Ocaml . It allows the user to solve systems of fix-point equations on a lattice, using a parameterized strategy for the iteration order and the application of widening. It also implements very recent techniques [50] .
- Interproc
(http://bjeannet.gforge.inria.fr/interproc ): a simple interprocedural static analyzer that infers properties on the numerical variables of programs in a toy language. It is aimed at demonstrating the use of the previous library and the above-described Apron library, and more generally at disseminating the knowledge in abstract interpretation. It is also deployed through a web-interface(http://pop-art.inrialpes.fr/interproc/interprocweb.cgi ). It has been cited in at least 3 published research papers in 2008.
- ConcurInterproc
extends Interproc with concurrency, for the analysis of multithreaded programs interacting via shared global variables. It is also deployed through a web-interface(http://pop-art.inrialpes.fr/interproc/concurinterprocweb.cgi ).