Analyzing Inductively Defined Properties for Recursive Data Structures

Zhenhao Tang,Hanfei Wang,Bin Li,Juan Zhai,Jianhua Zhao,Xuandong Li
DOI: https://doi.org/10.1145/2875913.2875930
2015-01-01
Abstract:This paper proposes a framework facilitating the analysis on inductively defined properties for recursive data structures. Our work has three main parts. First, it helps simplify the analysis of heap-manipulating programs by classifying inductive properties of recursive data structures into two classifications and each of them is handled with observed patterns. Second, we propose a technique called slicing and splicing to track and specify how data structures are manipulated by programs, in which data structures are first sliced into several parts and these parts are further spliced into new data structures. Third, this work presents a property-directed interprocedural analysis, together with an algorithm to check the boundaries of modified procedure-local heaps regarding the recursive data structures pointed to by the parameters passed to the procedures.
What problem does this paper attempt to address?