Rewriting approximations for fast prototyping of static analyzers

29Citations
Citations of this article
3Readers
Mendeley users who have this article in their library.
Get full text

Abstract

This paper shows how to construct static analyzers using tree automata and 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 the program states that can be reached. The approach enables fast prototyping of static analyzers because modifying the analysis simply amounts to changing the set of rewrite rules defining the approximation. A salient feature of this approach is that the approximation is correct by construction and hence does not require an explicit correctness proof. To illustrate the framework proposed here on a realistic programming language we instantiate it with the Java Virtual Machine semantics and perform class analysis on Java bytecode programs. © Springer-Verlag Berlin Heidelberg 2007.

Cite

CITATION STYLE

APA

Boichut, Y., Genet, T., Jensen, T., & Le Roux, L. (2007). Rewriting approximations for fast prototyping of static analyzers. In Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics) (Vol. 4533 LNCS, pp. 48–62). Springer Verlag. https://doi.org/10.1007/978-3-540-73449-9_6

Register to see more suggestions

Mendeley helps you to discover research relevant for your work.

Already have an account?

Save time finding and organizing research with Mendeley

Sign up for free