Treffer: Reachability Analysis of Program Variables

Title:
Reachability Analysis of Program Variables
Contributors:
Gramlich B., Miller D., Sattler U., Nikolic, Durica, Spoto, Nicola Fausto
Publisher Information:
Springer
DEU
Berlin
Publication Year:
2012
Collection:
Università degli Studi di Verona: Catalogo dei Prodotti della Ricerca (IRIS)
Document Type:
Konferenz conference object
File Description:
STAMPA
Language:
English
Relation:
info:eu-repo/semantics/altIdentifier/isbn/9783642313646; info:eu-repo/semantics/altIdentifier/wos/WOS:000329182700003; ispartofseries:Lecture Notes in Artificial Intelligence; ispartofbook:Proceedings of the 6th International Joint Conference on Automated Reasoning (IJCAR 2012); 6th International Joint Conference on Automated Reasoning; volume:7364; firstpage:423; lastpage:438; numberofpages:16; serie:LECTURE NOTES IN COMPUTER SCIENCE; alleditors:Gramlich B.; Miller D.; Sattler U.; https://hdl.handle.net/11562/414136; http://www.springerlink.com/content/u52nnt52p6560848/
DOI:
10.1007/978-3-642-31365-3
Rights:
info:eu-repo/semantics/restrictedAccess
Accession Number:
edsbas.77A2BFEA
Database:
BASE

Weitere Informationen

A variable v reaches a variable w if there is a path from the memory location bound to v to the one bound to w. This information is important for improving the precision of other static analyses, such as side-eects, field initialization, cyclicity and path-length, as well as of more complex analyses built upon them, such as nullness and termination. We present a provably correct constraint-based reachability analysis for Java bytecode. Our constraint is a graph whose nodes are program points and whose arcs propagate reachability information according to the semantics of bytecodes. The analysis has been implemented in the Julia static analyzer. Experiments that we performed on non-trivial Java and Android programs show an improvement of precision due to a reachability information, whose presence also reduces the cost of nullness and termination analyses.