Space consumption analysis by abstract interpretation: Reductivity properties

In a previous paper we presented an abstract interpretation-based static analysis for inferring heap and stack memory consumption in a functional language. The language, called Safe, is eager and first-order, and its memory management system is based on heap regions instead of the more conventional...

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Veröffentlicht in:Science of computer programming Jg. 111; S. 458 - 482
Hauptverfasser: Montenegro, Manuel, Peña, Ricardo, Segura, Clara
Format: Journal Article
Sprache:Englisch
Veröffentlicht: Elsevier B.V 01.11.2015
Schlagworte:
ISSN:0167-6423, 1872-7964
Online-Zugang:Volltext
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
Beschreibung
Zusammenfassung:In a previous paper we presented an abstract interpretation-based static analysis for inferring heap and stack memory consumption in a functional language. The language, called Safe, is eager and first-order, and its memory management system is based on heap regions instead of the more conventional approach of having a garbage collector. In this paper we concentrate on an important property of our analysis, namely that the inferred bounds are reductive under certain reasonable conditions. This means that by iterating the analysis using as input the prior inferred bound, we can get tighter and tighter bounds, all of them correct. In some cases, even the exact bound is obtained. The paper includes several examples and case studies illustrating in detail the reductivity property of the inferred bounds. •First space analysis for a functional language with regions.•Our bounds go beyond multivariate polynomials.•Our bounds have the property of reductivity, i.e. they improve by iteration.•We have formally proved the correctness of all the results and implemented all the algorithms.
ISSN:0167-6423
1872-7964
DOI:10.1016/j.scico.2014.04.014