Program analysis using empirical abstraction
Document Type
Article
Publication Date
8-1-2023
Abstract
Given a program analysis problem that consists of a program and a property of interest, we use an empirical approach to automatically construct a sequence of abstractions that approach an ideal abstraction suitable for solving that problem. This process begins with an infinite concrete domain that maps to a finite abstract cluster domain defined by statistical procedures. Given a set of properties expressed as formulas in a restricted and bounded variant of CTL, we can test the success of the abstraction with respect to a predefined performance measure. In addition, we can perform iterative abstraction-refinement of the clustering by tuning hyperparameters that determine the accuracy of the cluster representations (abstract states) and determine the number of clusters.
Publication Source (Journal or Book title)
International Journal on Software Tools for Technology Transfer
First Page
431
Last Page
452
Recommended Citation
Ho, V., Alvin, C., Lawson, J., Mukhopadhyay, S., & Peterson, B. (2023). Program analysis using empirical abstraction. International Journal on Software Tools for Technology Transfer, 25 (4), 431-452. https://doi.org/10.1007/s10009-023-00709-y