Termination criteria for tree automata completion

Thomas Genet 1, *
* Corresponding author
1 CELTIQUE - Software certification with semantic analysis
IRISA-D4 - LANGAGE ET GÉNIE LOGICIEL, Inria Rennes – Bretagne Atlantique
Abstract : This paper presents two criteria for the termination of tree automata completion. Tree automata completion is a technique for computing a tree automaton recognizing or over-approximating the set of terms reachable w.r.t. a term rewriting system. The first criterion is based on the structure of the term rewriting system itself. We prove that for most of the known classes of linear rewriting systems preserving regularity, the tree automata completion is terminating. Moreover, it outputs a tree automaton recognizing exactly the set of reachable terms. When the term rewriting system is outside of such classes, the set of reachable terms can be approximated using a set of equations defining an abstraction. The second criterion, which holds for any left-linear term rewriting system, defines sufficient restrictions on the set of equations for the tree automata completion to terminate. We then show how to take advantage of this second criterion to use completion as a new static analysis technique for functional programs. Some examples are demonstrated using the Timbuk completion tool.
Complete list of metadatas

Cited literature [49 references]  Display  Hide  Download

https://hal.inria.fr/hal-01194533
Contributor : Thomas Genet <>
Submitted on : Monday, September 7, 2015 - 10:59:45 AM
Last modification on : Thursday, November 15, 2018 - 11:57:41 AM
Long-term archiving on : Tuesday, December 8, 2015 - 11:12:49 AM

File

Genet-JLAMP15.pdf
Files produced by the author(s)

Identifiers

Citation

Thomas Genet. Termination criteria for tree automata completion. Journal of Logical and Algebraic Methods in Programming, Elsevier, 2016, 85, Issue 1, part 1, pp.3-33. ⟨10.1016/j.jlamp.2015.05.003⟩. ⟨hal-01194533⟩

Share

Metrics

Record views

1080

Files downloads

163