Reachability-based acyclicity analysis by Abstract Interpretation


Autoria(s): Genaim, Samir; Zanardini, Damiano
Data(s)

2013

Resumo

In programming languages with dynamic use of memory, such as Java, knowing that a reference variable x points to an acyclic data structure is valuable for the analysis of termination and resource usage (e.g., execution time or memory consumption). For instance, this information guarantees that the depth of the data structure to which x points is greater than the depth of the data structure pointed to by x.f for any field f of x. This, in turn, allows bounding the number of iterations of a loop which traverses the structure by its depth, which is essential in order to prove the termination or infer the resource usage of the loop. The present paper provides an Abstract-Interpretation-based formalization of a static analysis for inferring acyclicity, which works on the reduced product of two abstract domains: reachability, which models the property that the location pointed to by a variable w can be reached by dereferencing another variable v (in this case, v is said to reach w); and cyclicity, modeling the property that v can point to a cyclic data structure. The analysis is proven to be sound and optimal with respect to the chosen abstraction.

Formato

application/pdf

Identificador

http://oa.upm.es/29463/

Idioma(s)

eng

Publicador

Facultad de Informática (UPM)

Relação

http://oa.upm.es/29463/1/29463genain_INVE_MEM_2013_163275.pdf

http://www.journals.elsevier.com/theoretical-computer-science/

info:eu-repo/semantics/altIdentifier/doi/10.1016/j.tcs.2012.12.018

Direitos

http://creativecommons.org/licenses/by-nc-nd/3.0/es/

info:eu-repo/semantics/openAccess

Fonte

Theoretical Computer Science, ISSN 0304-3975, 2013, Vol. 474, No. 0

Palavras-Chave #Informática
Tipo

info:eu-repo/semantics/article

Artículo

PeerReviewed