@inproceedings{f1591d1190ae4df2b1c73bd653c71d41,
title = "A combination framework for tracking partition sizes",
abstract = "We describe an abstract interpretation based framework for proving relationships between sizes of memory partitions. Instances of this framework can prove traditional properties such as memory safety and program termination but can also establish upper bounds on usage of dynamically allocated memory. Our framework also stands out in its ability to prove properties of programs manipulating both heap and arrays which is considered a difficult task. Technically, we define an abstract domain that is parameterized by an abstract domain for tracking memory partitions (sets of memory locations) and by a numerical abstract domain for tracking relationships between cardinalities of the partitions. We describe algorithms to construct the transfer functions for the abstract domain in terms of the corresponding transfer functions of the parameterized abstract domains. A prototype of the framework was implemented and used to prove interesting properties of realistic programs, including programs that could not have been automatically analyzed before. Copyright",
keywords = "Combining analyses, Memory safety, Numerical analysis, Set analysis, Shape analysis, Space bounds, Termination",
author = "Sumit Gulwani and Tal Lev-Ami and Mooly Sagiv",
year = "2009",
doi = "10.1145/1480881.1480912",
language = "אנגלית",
isbn = "9781605583792",
series = "Conference Record of the Annual ACM Symposium on Principles of Programming Languages",
pages = "239--251",
booktitle = "Proceedings of the 36th Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, POPL'09",
note = "36th Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, POPL'09 ; Conference date: 21-01-2009 Through 23-01-2009",
}