Modularity in lattices: a case study on the correspondence between top-down and bottom-up analysis

<br xmlns:etd="http://www.ouls.ox.ac.uk/ora/modsextensions">Interprocedural analyses are compositional when they compute over-approximations of procedures in a bottom-up fashion. These analyses are usually more scalable than top-down analyses, which compute a different procedure summ...

Full description

Bibliographic Details
Main Authors: Castelnuovo, G, Naik, M, Rinetzky, N, Sagiv, M, Yang, H
Format: Conference item
Published: Springer 2015
_version_ 1826283840425951232
author Castelnuovo, G
Naik, M
Rinetzky, N
Sagiv, M
Yang, H
author_facet Castelnuovo, G
Naik, M
Rinetzky, N
Sagiv, M
Yang, H
author_sort Castelnuovo, G
collection OXFORD
description <br xmlns:etd="http://www.ouls.ox.ac.uk/ora/modsextensions">Interprocedural analyses are compositional when they compute over-approximations of procedures in a bottom-up fashion. These analyses are usually more scalable than top-down analyses, which compute a different procedure summary for every calling context. However, compositional analyses are rare in practice as it is difficult to develop them with enough precision.</br><br xmlns:etd="http://www.ouls.ox.ac.uk/ora/modsextensions">We establish a connection between compositional analyses and modular lattices, which require certain associativity between the lattice join and meet operations, and use it to develop a compositional version of the connection analysis by Ghiya and Hendren. Our version is slightly more conservative than the original top-down analysis in order to meet our modularity requirement. When applied to real-world Java programs our analysis scaled much better than the original top-down version: The top-down analysis times out in the largest two of our five programs, while ours incurred only 2–5% of precision loss in the remaining programs.</br>
first_indexed 2024-03-07T01:04:54Z
format Conference item
id oxford-uuid:8afe6cc2-700e-4530-8018-ff394ed65cdc
institution University of Oxford
last_indexed 2024-03-07T01:04:54Z
publishDate 2015
publisher Springer
record_format dspace
spelling oxford-uuid:8afe6cc2-700e-4530-8018-ff394ed65cdc2022-03-26T22:35:14ZModularity in lattices: a case study on the correspondence between top-down and bottom-up analysisConference itemhttp://purl.org/coar/resource_type/c_5794uuid:8afe6cc2-700e-4530-8018-ff394ed65cdcSymplectic Elements at OxfordSpringer2015Castelnuovo, GNaik, MRinetzky, NSagiv, MYang, H<br xmlns:etd="http://www.ouls.ox.ac.uk/ora/modsextensions">Interprocedural analyses are compositional when they compute over-approximations of procedures in a bottom-up fashion. These analyses are usually more scalable than top-down analyses, which compute a different procedure summary for every calling context. However, compositional analyses are rare in practice as it is difficult to develop them with enough precision.</br><br xmlns:etd="http://www.ouls.ox.ac.uk/ora/modsextensions">We establish a connection between compositional analyses and modular lattices, which require certain associativity between the lattice join and meet operations, and use it to develop a compositional version of the connection analysis by Ghiya and Hendren. Our version is slightly more conservative than the original top-down analysis in order to meet our modularity requirement. When applied to real-world Java programs our analysis scaled much better than the original top-down version: The top-down analysis times out in the largest two of our five programs, while ours incurred only 2–5% of precision loss in the remaining programs.</br>
spellingShingle Castelnuovo, G
Naik, M
Rinetzky, N
Sagiv, M
Yang, H
Modularity in lattices: a case study on the correspondence between top-down and bottom-up analysis
title Modularity in lattices: a case study on the correspondence between top-down and bottom-up analysis
title_full Modularity in lattices: a case study on the correspondence between top-down and bottom-up analysis
title_fullStr Modularity in lattices: a case study on the correspondence between top-down and bottom-up analysis
title_full_unstemmed Modularity in lattices: a case study on the correspondence between top-down and bottom-up analysis
title_short Modularity in lattices: a case study on the correspondence between top-down and bottom-up analysis
title_sort modularity in lattices a case study on the correspondence between top down and bottom up analysis
work_keys_str_mv AT castelnuovog modularityinlatticesacasestudyonthecorrespondencebetweentopdownandbottomupanalysis
AT naikm modularityinlatticesacasestudyonthecorrespondencebetweentopdownandbottomupanalysis
AT rinetzkyn modularityinlatticesacasestudyonthecorrespondencebetweentopdownandbottomupanalysis
AT sagivm modularityinlatticesacasestudyonthecorrespondencebetweentopdownandbottomupanalysis
AT yangh modularityinlatticesacasestudyonthecorrespondencebetweentopdownandbottomupanalysis