A framework for numeric analysis of array operations

Denis Gopan, Thomas Reps, Mooly Sagiv

Research output: Contribution to journalArticlepeer-review

Abstract

Automatic discovery of relationships among values of array elements is a challenging problem due to the unbounded nature of arrays. We present a framework for analyzing array operations that is capable of capturing numeric properties of array elements. In particular, the analysis is able to establish that all array elements are initialized by an arrayinitialization loop, as well as to discover numeric constraints on the values of initialized elements. The analysis is based on the combination of canonical abstraction and summarizing numeric domains. We describe a prototype implementation of the analysis and discuss our experience with applying the prototype to several examples, including the verification of correctness of an insertion-sort procedure.

Original languageEnglish
Pages (from-to)338-350
Number of pages13
JournalACM SIGPLAN Notices
Volume40
Issue number1
DOIs
StatePublished - Jan 2005

Keywords

  • Abstract numeric domains
  • Array analysis
  • Canonical abstraction
  • Program analysis
  • Summarization

Cite this