Skip to Main content Skip to Navigation
Journal articles

Reachability Analysis of Innermost Rewriting - extended version

Thomas Genet 1 Yann Salmon 1
1 CELTIQUE - Software certification with semantic analysis
Inria Rennes – Bretagne Atlantique , IRISA-D4 - LANGAGE ET GÉNIE LOGICIEL
Abstract : We consider the problem of inferring a grammar describing the output of a functional program given a grammar describing its input. Solutions to this problem are helpful for detecting bugs or proving safety properties of functional programs, and several rewriting tools exist for solving this problem. However, known grammar inference techniques are not able to take evaluation strategies of the program into account. This yields very imprecise results when the evaluation strategy matters. In this work, we adapt the Tree Automata Completion algorithm to approximate accurately the set of terms reachable by rewriting under the innermost strategy. We formally prove that the proposed technique is sound and precise w.r.t. innermost rewriting. We show that those results can be extended to the leftmost and rightmost innermost case. The algorithms for the general innermost case have been implemented in the Timbuk reachability tool. Experiments show that it noticeably improves the accuracy of static analysis for functional programs using the call-by-value evaluation strategy.
Document type :
Journal articles
Complete list of metadata

Cited literature [36 references]  Display  Hide  Download
Contributor : Thomas Genet <>
Submitted on : Friday, June 2, 2017 - 2:19:09 PM
Last modification on : Thursday, January 7, 2021 - 4:35:53 PM
Long-term archiving on: : Wednesday, December 13, 2017 - 8:53:48 AM


Files produced by the author(s)



Thomas Genet, Yann Salmon. Reachability Analysis of Innermost Rewriting - extended version. Logical Methods in Computer Science, Logical Methods in Computer Science Association, 2017, ⟨10.2168/LMCS-???⟩. ⟨hal-01532090⟩



Record views


Files downloads