Making Set-Constraint Program Analyses Scale

  • Authors:
  • Manuel Fahndrich;Alex Aiken

  • Affiliations:
  • -;-

  • Venue:
  • Making Set-Constraint Program Analyses Scale
  • Year:
  • 1996

Quantified Score

Hi-index 0.00

Visualization

Abstract

Constraint-based program analyses are appealing because elaborate analyses can be described with a concise and simple set of constraint generation rules. Constraint resolution algorithms have been developed for many kinds of constraints, conceptually allowing an implementation of a constraint-based program analysis to reuse large pieces of existing code. In practice, however, new analyses often involve re-implementing new, complex constraint solving frameworks, tuned for the particular analysis in question. This approach wastes development time and interferes with the desire to experiment quickly with a number of different analyses. We believe that implementing an analysis should require writing only the code to generate the constraints, and that a well engineered-library can take care of constraint representation, resolution, and transformation. Writing such a library capable of handling small programs is not too difficult, but scaling to large programs is hard. Toward this goal, we are developing a scalable, expressive framework for solving a class of set constraints. Scalability is achieved through four techniques: polymorphism, simplification, separation, and sparse representation of constraints.