Team celtique

Overall Objectives
Scientific Foundations
New Results
Contracts and Grants with Industry
Other Grants and Activities

Section: New Results

Static analysis based on rewriting and tree automata

Participants : Thomas Genet, Benoît Boyer.

Tree automata completion with equational abstractions

We have proposed a new language for defining regular approximations of set of reachable terms. Approximations are defined using equations which define equivalence classes of terms “similar” w.r.t. the approximation. The idea is close to the one developped with Valérie Viet Triem Tong  [60] and more recently by José Meseguer, Miguel Palomino and Narciso Martí-Oliet  [69] . With regards to this last work, the interest of our approach is that it imposes fewer restriction on the equations used to define approximations. Our only syntactical constraint is that equations have to be linear though  [69] imposes that the term rewriting system and the set of equations have to be coherent which is a more drastic restriction. Our proposition, published in [7] , consists in using the equations to detect equivalent terms recognized by the tree automata and merge the recognizing states so as to mimic the construction of equivalence classes. We have also proven a precision result showing that, under some retrictions on the initial language, our algorithm builds no more than terms reachable by rewriting modulo the set of equations.

CounterVerification of Temporal Properties on Tree Automata

We extended this static analysis framework based on term rewriting systems and tree automata with Counterexample Example Guided Automatic Refinement (CEGAR  [52] ). The refinement of approximations on tree automata has already been investigated in  [48] , where semantics of programs is encoded using tree transducers. With Axel Legay (S4 team) and Yohan Boichut (LIFO), we defined a CEGAR approach of completion with automatic approximation refinement, where semantics is encoded using term rewriting systems [33] . We chose to stick to term rewriting systems because it permits a more straightforward encoding of program semantics than tree transducers. Furthermore, our completion based CEGAR avoids a lot of forward and backward computations that are necessary in  [48] . This approach is currently being implemented in Timbuk  5.2 .


Logo Inria