Rewriting for Fast Prototyping of Static Analyzers - Inria - Institut national de recherche en sciences et technologies du numérique Access content directly
Reports (Research Report) Year : 2006

Rewriting for Fast Prototyping of Static Analyzers

Yohan Boichut
  • Function : Author
  • PersonId : 830638
Thomas Genet
Thomas Jensen
  • Function : Author
  • PersonId : 832993
Luka Leroux
  • Function : Author
  • PersonId : 835948


This paper defines a new framework for fast prototyping of static analyzers based on rewriting techniques. Starting from a term rewriting system representing the operational semantics of the target programming language and given a program to analyze, we automatically construct an over-approximation of the set of reachable terms, i.e. of program states that can be reached. With this approximation, it is possible to prove a variety of safety or security properties expressible in terms of (un)reachability. Compared with static analysis based on abstract interpretation, a salient feature of this approach is that the approximation is correct by construction. The approach enables fast prototyping of static analyzers because modifying the analysis simply amounts to changing the set of rewrite rules defining the approximation. To illustrate the framework proposed here on a realistic programming language we instantiate it with the Java Virtual Machine semantics and use Java bytecode programs as running examples. We show how to compile a Java bytecode program into an equivalent term rewriting system and show how to specify and implement simple class analysis by defining rewriting approximations.
Fichier principal
Vignette du fichier
RR-5997.pdf (312.74 Ko) Télécharger le fichier

Dates and versions

inria-00106330 , version 1 (13-10-2006)
inria-00106330 , version 2 (16-10-2006)


  • HAL Id : inria-00106330 , version 2


Yohan Boichut, Thomas Genet, Thomas Jensen, Luka Leroux. Rewriting for Fast Prototyping of Static Analyzers. [Research Report] RR-5997, INRIA. 2006, pp.20. ⟨inria-00106330v2⟩
264 View
109 Download


Gmail Facebook Twitter LinkedIn More