A Correct, Precise and Efficient Integration of Set-Sharing, Freeness and Linearity for the Analysis of Finite and Rational Tree Languages

Publication TypeJournal Article
Year of Publication2004
AuthorsHill PM, Zaffanella E, Bagnara R
JournalTheory and Practice of Logic Programming
Keywordsabstract interpretation, abstract unification, freeness, linearity, logic programming, rational trees, set-sharing, software verification, static analysis

It is well-known that freeness and linearity information positively interact with aliasing information, allowing both the precision and the efficiency of the sharing analysis of logic programs to be improved. In this paper we present a novel combination of set-sharing with freeness and linearity information, which is characterized by an improved abstract unification operator. We provide a new abstraction function and prove the correctness of the analysis for both the finite tree and the rational tree cases. Moreover, we show that the same notion of redundant information as identified in \cite{BagnaraHZ02TCS,ZaffanellaHB02TPLP} also applies to this abstract domain combination: this allows for the implementation of an abstract unification operator running in polynomial time and achieving the same precision on all the considered observable properties.

File attachments: 
We are a passionate team of experts. Do not hesitate to let us have your feedback:
You may be surprised to discover just how much your suggestions matter to us.